Technology Experience
My daily work

Non crederanno davvero che ci credo…

Il 1° Dicembre scorso mi venne un colpo, perchè ricevetti un’e-mail di spamming molto veritiera. Ne avevo parlato qua. Era uno studio legale che – diceva – mi avrebbe denunciato perchè gli arrivavano e-mail volgari da parte mia. L’e-mail era scritta davvero bene, sembrava attendibile, senonche il giorno dopo sia punto-informatico.it che molti altri siti parlavano di questa cosa come di una bufala. Io stesso chiamai il mio provider per sapere se poteva essere una cosa attendibile oppure no. La risposta ve la lascio immaginare… 🙂

Una vicenda analoga si è ripetuta questa mattina.

Ricevo tre e-mail da parte della Polizia di Stato, nella persona del capitano Prisco Mazzi, dicendomi che c’è un procedimento aperto nei miei confronti perchè dal mio PC sono stati scaricati files pirata in formato mp3! Quindi ho trasgredito alle leggi sul diritto d’autore, sono complice del reato e – qui mi sono sentito davvero figo – ho addirittura un numero nel loro registro TUTTO MIO!!! Vi riporto parte del testo dell’e-mail che ho ricevuto con un bel copia & incolla:

Sono capitano della polizia Prisco Mazzi. I rusultati dell.ultima verifica hanno rivelato che dal Suo computer sono stati visitati i siti che trasgrediscono i diritti d.autore e sono stati scaricati i file pirati nel formato mp3. Quindi Lei e un complice del reato e puo avere la responsabilita amministrativa.

Il suo numero nel nostro registro e 00098361420.

Non si puo essere errore, abbiamo confrontato l.ora dell.entrata al sito nel registro del server e l.ora del Suo collegamento al Suo provider. Come e l.unico fatto, puo sottrarsi alla punizione se si impegna a non visitare piu i siti illegali e non trasgredire i diritti d.autore. Per questo per favore conservate l.archivio (avviso_98361420.zip parola d’accesso: 1605) allegato alla lettera al Suo computer, desarchiviatelo in una cartella e leggete l.accordo
che si trova dentro.
La vostra parola d’accesso personale per l’archivio: 1605
E obbligatorio.
Grazie per la collaborazione.

In allegato all’e-mail c’è un bel file zip, come spiegato qui sopra. Non ho pensato nemmeno lontanamente di aprirlo, ma deduco che lo zip sia protetto da password e che tale password sia “1605”. Il nostro PC merita un po’ di rispetto ed un po’ di buona educazione informatica: e-mail di un certo tipo, ragazzi, spazziamole via senza farci troppe domande.

Ed inoltre, dico io: va bene fare spamming, ma almeno scrivete in un italiano decente, altrimenti qua – davvero – c’è gente che pensa di insultare la nostra intelligenza scrivendo quattro linee in croce convinta di fregarci.

Send to Kindle
My daily work

IoProgrammo? Sarà per la prossima volta…

Piccola riflessione: magari la mia serie di post su Flickr e WPF sarebbero stati adatti per IoProgrammo. WPF è una tecnologia che è agli esordi, sia per noi che per la grande massa. Flickr parla di fotografie ed è un argomento succulento che può interessare molte persone. Credo che un bel titolone su IoProgrammo ci stava anche bene. La differenza tra bloggare e scrivere un articolo è molta: a me piace condividere con voi, mentre scrive un articolo è un po’ più impegnativo. Sicuro: scrivendo su IoProgrammo si viene pagati, ma a volte è molto meglio il proprio blog. Se avessi voglia di arrotondare il mio stipendio, è un discorso, ma non c’è nulla di più bello che scrivere sapendo di finire on-line qualche istante dopo.

Se ciascuno di noi non scrivesse per il solo piacere di farlo, probabilmente i blog non esisterebbero neppure, cadremmo nell’Età della Pietra e dovremmo spendere qualche euro per prendere qualche rivista qua e là per tenerci informati.

No, no, molto meglio il blog!

Send to Kindle
.NET World

[Flickr.4] Usare la ListBox di WPF con binding ed ItemTemplate

Questa volta arrivo subito al sodo. Nell’ultimo post avevamo ottenuto l’elenco dei set fotografici associati ad un particolare utente. Lo scopo è quello di elencare questi set in qualche modo e di farli vedere in maniera gradevole all’utente che sta usando la nostra applicazione. La window principale si chiama MainWindow e questo è il suo XAML (non completo):

<Grid> <Grid.RowDefinitions> <RowDefinition Height="50" /> <RowDefinition Height="*" /> </Grid.RowDefinitions> <StackPanel Orientation="Horizontal" Grid.Row="0" VerticalAlignment="Center"> <TextBox Name="UsernameTextBox" Text="IgorDamiani" Width="150" Margin="4" /> <b:FlickrButton x:Name="ListPhotoSets" Content=" List Photo Sets " Margin="4" Click="listPhotosets" /> <b:FlickrButton x:Name="WebToUserPhotos" Content=" See User's Photos " Margin="4" Click="webToUserPhotos" IsEnabled="False" /> <b:FlickrButton x:Name="WebToUserWorldMap" Content=" See User's World Map " Margin="4" Click="webToUserWorldMap" IsEnabled="False" /> </StackPanel> <ListBox Name="PhotoSetListBox" Grid.Row="1" MouseDoubleClick="PhotoSetListBox_MouseDoubleClick" ItemsSource="{Binding Source={StaticResource sets}, Path=FlickrBrowserPhotoset}" /> </Grid>

Lo XAML è concettualmente piuttosto semplice. In pratica, contiene una Grid con due sole righe. La prima ha un’altezza fissa e contiene uno StackPanel orizzontale che a sua volta contiene una TextBox e tre FlickrButton. La TextBox serve per ricercare un utente attraverso il suo username. Il primo FlickrButton è quello che ci interessa di più, perchè una volta cliccato ricerca i set fotografici dell’utente e li visualizza nella ListBox che si trova nella seconda riga della Grid. Gli altri due FlickrButton raggiungono due Url differenti: per adesso possiamo bellamente ignorarli.

Quello che ci interessa in questo momento sono tre cose: la TextBox UsernameTextBox, il FlickrButton ListPhotoSets e la ListBox PhotoSetListBox. Dall’interazione di questi tre controlli nasce l’applicazione vera e propria.

Se diamo un’occhiata al post precedente, vediamo come il popolamento della ListBox avviene attraverso l’impostazione della sua proprietà ItemsSource. Il valore assunto da questa proprietà è un oggetto di tipo FlickrBrowserPhotosetCollection, che è una classe che semplicemente è una List<FlickrBrowserPhotoset>. La classe FlickrBrowserPhotoSet espone una proprietà Title (titolo del set fotografico), NumberOfPhotos (Numero di foto nel set), PrimaryPhotoUrl (url della foto che fa da copertina al set), PhotosetSquareThumbnailUrl e Photos. Queste ultime due per adesso non sono utilizzate.

Questo per dire che possiamo lavorare sulla proprietà ItemTemplate della ListBox, specificando l’aspetto che ogni riga della ListBox deve assumere. Con aspetto intendo per esempio un pannello, che contiene altri pannelli, altri controlli e sui quali possiamo definire stili, triggers e tutto il resto. Diamo ancora una volta un’occhiata allo XAML sopra, nel punto in cui viene dichiarata la ListBox: viene specificato che la sorgente di ItemsSource è la risorsa statica sets, e viene specificato che ogni elemento aggiunto alla ListBox sarà di tipo FlickrBrowserPhotoset. Questo è importante, perchè dentro il template faremo un po’ di binding indicando la proprietà che ogni controllo deve visualizzare. Ultima nota: la risorsa sets viene popolato dal code-behind in C#, l’abbiamo visto l’altra volta. Un piccolo rimando è necessario per ricordarcelo:

FlickrBrowserPhotosetCollection setFoto = (FlickrBrowserPhotosetCollection) this.FindResource("sets"); // Popolo setFoto // ... // Assegno ItemsSource PhotoSetListBox.ItemsSource = setFoto;

Con i metodo FindResource ottengo l’istanza di FlickrBrowserPhotosetCollection. Poi popolo l’oggetto setFoto con tutti i set fotografici che mi servono e poi assegno ItemsSource. Ne abbiamo parlato l’altra volta, perciò chiudo qui.

L’ultima cosa che voglio far vedere è lo XAML che definisce il template che il runtime di WPF utilizza per disegnare ogni Item aggiunto alla ListBox:

<Style TargetType="{x:Type ListBox}"> <Setter Property="ItemTemplate"> <Setter.Value> <DataTemplate> <StackPanel Margin="4" Orientation="Horizontal"> <Image Margin="4"> <Image.Source> <Binding Path="PrimaryPhotoUrl" /> </Image.Source> </Image> <StackPanel Margin="4" Orientation="Vertical"> <TextBlock Margin="4" FontSize="14pt" Text="{Binding Path=Title}"/> <StackPanel Margin="4" Orientation="Horizontal"> <TextBlock Margin="4" FontSize="10pt" Text="Number of Photos :"/> <TextBlock Margin="4" FontSize="10pt" Text="{Binding Path=NumberOfPhotos}"/> </StackPanel> <StackPanel Margin="4" Orientation="Horizontal"> <TextBlock Margin="4" FontSize="10pt" Text="Thumbnail Url :"/> <TextBlock Margin="4" FontSize="10pt" Text="{Binding Path=PhotosetSquareThumbnailUrl}"/> </StackPanel> <TextBox Text="Drag here to upload new images" Background="LightCoral" Name="txtUpload" IsReadOnly="True" PreviewDragOver="ehDragOver" PreviewDrop="ehDrop" PreviewDragLeave="ehDragLeave" /> </StackPanel> </StackPanel> </DataTemplate> </Setter.Value> </Setter> </Style>

Lo XAML è lungo, ma vi posso assicurare che fare la stessa cosa con normale C# sarebbe un incubo. Ogni item viene disegnato con uno StackPanel che contiene un Image ed un altro StackPanel sulla sua destra. La morale è: visualizzo un certo numero di TextBox che vengono bindate alle diverse proprietà pubbliche esposte dalla classe FlickrBrowserPhotoset di cui parlavamo prima. Il risultato è inquietante…eccolo…

Farà anche schifo, ma una volta un impatto simile nelle applicazioni non riuscivo a darlo nemmeno se sudava quattro camicie. In realtà sto già lavorando ad altre features interessanti, come la possibilità di uploadare nuove foto e di inserirle dentro un set (nuovo o già esistente) tramite drag’n’drop, di ricercare foto le foto di un utente dato un particolare tag e roba del genere.

A presto, metterò disponibile il download di codice ed applicazione. Stay tuned!

Send to Kindle
Community

XeDotNet: foto & video

Dopo un paio di giorni di attesa, sono riuscito a rendere disponibili le foto e i video che ho fatto durante l’ultimo meeting di XeDotNet dedicato a Workflow Foundation.

Le 24 foto sono disponibili in questo set del mio Flickr. Siete ovviamente liberi di guardarle scaricarle, anche alla loro grandezza originale. Un’altra cosa interessante nell’utilizzare Flickr è che posso linkarle direttamente da quel sito, che tra l’altro si smazza da solo il fatto di ridimensionarle secondo alcune dimensioni più o meno standard (75×75, 100×75, 240×180, 500×375 – come quella qui sotto – e via dicendo, 1024×768 ed infine 1600×1200). Io le uploado ed ottengo gratis le stesse foto da poter pubblicare qua sul mio blog (*). E le ho anche geotaggate, per cui vedrete le foto del meeting esattamente nella via giusta, e le foto fatte in birreria altrettanto. Un ringraziamento ad Andrea Dottor per avermi aiutato a ricordare i nomi delle vie. 🙂

Riporto un po’ di foto qui sotto giusto per renderle visibili anche attraverso il mio blog.

Sotto : Raffaele raggiunge le ultime fila per rispondere ad una domanda.

Sotto : La saletta piena ascolta interessata Raffaele che parla.

Sotto : l’unica partecipante femminile del meeting, davvero molto carina. Su commissione del buon Andrea, ha scelto 2 numeri per l’estrazione dei premi: un voucher per un esame MS ed una licenza per Windows Vista. La licenza l’avevo vinta io, ma ho preferito cederla a chi non l’aveva. 🙂 Non credo che lei sappia che le ho scattato una foto (per…ehm…dovere di cronaca): se dovesse dar fastidio…me lo faccia sapere, ok? 🙂

Sotto: e poi tutti assieme alla Birreria Scarpon di Mestre. Ho mangiato un disco volante, un panino gigantesco con wurstel ed un sacco di altra roba. Con due birre medie.

Devo correre, adesso, ho un po’ di lavoro da fare. Ma questo post andava fatto, e a dir la verità era nelle bozze di WLW da un po’ di tempo. Mancavano le foto, che ho fatto in tempo ad uploadare su Flickr questa mattina prestissimo prima di uscire di casa per andare al lavoro.

(*) : i 20 euro/anno spesi meglio della mia vita, credo. 🙂

Send to Kindle
Community

Evento XeDotNet: ritorno a casa

Alle 16:22 io e mio fratello abbiamo preso l’Eurostar da Venezia Santa Lucia diretti a Milano stazione Centrale. L’evento è stato ieri sera, ma abbiamo deciso di investire questa giornata per visitare Venezia. C’ero già stato 3 anni fa con la mia ragazza, Paola, trascorrendo la giornata a visitare la città. E’ stato un piacevole ritorno, durante il quale ho scattato un mare di foto e ho addirittura acquistato i biglietti per il ritorno seduto tranquillamente all’aperto in un bar a piazza San Marco.

Dell’evento XeDotNet parlerò un’altra volta, adesso sono cotto e con le spalle a pezzi, dal momento che ho camminato per non so quanto tempo con lo zaino sulle spalle. 🙂

Fatemi navigare un pochino, insomma, giusto per passare il tempo.

Send to Kindle
Community

Giornata Nazionale della Pulizia degli RSS

Sono convinto che se si cercasse su Google, salterebbe fuori che ogni giorno si festeggia qualcosa di diverso. Il 20 Ottobre per esempio so che è la Giornata dei Controllori del Traffico Aereo, per esempio.

Lorenzo oggi ha istituito il 10 Maggio come la Giornata della Pulizia degli RSS. 🙂

Lorenzo, anche tu, guru mio, non è che mi hai cancellato dal tuo aggregatore, vero? Vero????

Send to Kindle
.NET World

[Flickr.3] Ricercare un utente ed ottenere i suoi set fotografici

Questo post è stato scritto durante il viaggio di andata all’evento di XeDotNet di questa sera. Giusto per cronaca. 🙂

Entriamo nel vivo
Ok, lasciamo da parte le sciocchezze sull’autenticazione di cui abbiamo parlato fino a ieri e vediamo qualcosa di più succulento. Dicevamo ieri che la finestra principale dell’applicazione è rappresentata dalla classe MainWindow. Quando l’applicazione è in esecuzione, possiamo inserire in una TextBox lo username di un utente su Flickr. Se l’utente esiste, possiamo vedere in una ListView i suoi sets di fotografie, oppure possiamo raggiungere la world map dell’utente stesso. Visivamente parlando, la windows si presenta in questo modo:

La cosa su cui voglio focalizzarmi è come riuscire a sfruttare la ListView in modo tale che ogni ListItem venga visualizzato in modo radicalemente diverso a quanto siamo abituati a vedere. Come tutte le ListView che si rispettino, anche quelle in WPF possono essere ovviamente popolate in due modi diversi:

  • aggiungendo a mano tanti ListItem attraverso il metodo Add esposto dalla proprietà Items. Per chi mi sta leggendo e non sa assolutamente nulla di WPF nè tantomeno di .NET: sappiate che potete aggiungere item di qualsiasi tipo, dal momento che il parametro in input al metodo Add è un generico object. Cosa viene visualizzato effettivamente in esecuzione dipende da molte cose: prima fra tutte, se è stato fatto o meno l’override del metodo ToString() della classe che stiamo aggiungendo alla ListView.
  • impostando la proprietà ItemsSource della ListView, che è tipo IEnumerable. Questo significa sfruttare il data-binding di WPF

Nell’esempio utilizzeremo il secondo metodo, che è quello più efficiente. Vediamo come fare.

Ottenere l’elenco dei set di fotografie associati ad un utente
Facciamo mente locale sull’immagine sopra. C’è una TextBox nella quale scrivere lo username dell’utente che ci interessa. Poi c’è un Button con una bella caption che dice: “List Photo Sets”. Vediamo come viene gestito il Click su questo Button che svela buona parte dell’arcano.

public void listPhotosets(object sender, RoutedEventArgs e) { if (conn == null) return; #region Trovo l'utente indicato nella TextBox try { currentUser = conn.PeopleFindByUsername(UsernameTextBox.Text); currentUserUri = conn.UrlsGetUserPhotos(currentUser.UserId); } catch (FlickrException ex) { MessageBox.Show("Username not found!", "Error...", MessageBoxButton.OK, MessageBoxImage.Error); return; } #endregion WebToUserPhotos.IsEnabled = (currentUserUri != null); WebToUserWorldMap.IsEnabled = (currentUserUri != null); // Leggo i sets di foto attualmente presenti Photosets sets = conn.PhotosetsGetList(currentUser.UserId); FlickrBrowserPhotosetCollection setFoto = (FlickrBrowserPhotosetCollection) this.FindResource("sets"); PhotoSetListBox.BeginInit(); PhotoSetListBox.ItemsSource = null; foreach (Photoset p in sets.PhotosetCollection) { FlickrBrowserPhotoset ps = new FlickrBrowserPhotoset(conn, p); setFoto.Add(ps); } PhotoSetListBox.ItemsSource = setFoto; PhotoSetListBox.EndInit(); }

Il codice è un po’ lungo, questa volta, ma piuttosto semplice da leggere. La prima cosa che dobbiamo fare è reperire un’istanza della classe FlickrUser, che ci dà un riferimento all’utente che è stato ricercato. Supponiamo di cercare l’utente “Igor Damiani”, come nell’esempio sopra. Salviamo in due field privati currentUser e currentUserUri l’utente corrente e l’url dell’utente su Flickr. Questo url ci servirà la prossima volta: ricordatevelo. 🙂

Se lo username specificato non esiste, le API di Flickr sollevano un’eccezione di tipo FlickrException che viene opportunamente trappata per poter dare all’utente un messaggio di errore che possa dire: “Che cavolo hai scritto????!”. 🙂 Nulla di che.

Terminata questa prima fase, posso richiedere a Flickr l’elenco dei sets di fotografie appartenenti all’utente. Lo facciamo con una sola semplice riga:

Photosets sets = conn.PhotosetsGetList(currentUser.UserId);

L’oggetto sets è ovviamente una collection di qualche tipo. Poi vado a prelevare dalle risorse della MainWindow un oggetto di tipo FlickrBrowserPhotosetCollection attraverso il metodo FindResource(). Indipendentemente da quello che andrò poi a fare sulla ListView, chiamo sempre i metodi BeginInit() all’inizio e EndInit() alla fine. Come si vede dal codice, vado a settare la proprietà ItemsSource dalla ListView sull’oggetto setFoto, che è una collection che viene popolato con un ciclo for…each per ciascun set di fotografie associato.

Un’altra parte dell’arcano sta in due parti: nello XAML (ovviamente) ed in un paio di classi che sono state create apposta per vivere all’interno del contesto di una Window di WPF. Queste classi derivano da DependencyObject e le loro proprietà pubbliche sono DependencyProperty: questo per permettere loro di essere utilizzate con l’engine di data-binding di WPF, appunto. Queste classi compaiono nel codice qui sopra e cominciano tutte e due per FlickrBrowser. La prima è FlickrBrowserPhotoset (che rappresenta un singolo set) e la seconda è FlickrBrowserPhotosetCollection che non è nient’altro che una List<FlickrBrowserPhotoset>.

Conclusione
Quello di cui vorrei parlare la prossima volta è chiaccherare un pochino sullo XAML della MainWindow. E’ lì che si nascondono (mica tanto) il data-binding, il template associato ad ogni ListItem ed altre cosucce interessanti. Alla prossima!

Send to Kindle
IV del Venerdì

[IV] del Venerdì (3)

L’artista lasciò che la sua voce scivolasse via verso il silenzio. Teneva gli occhi chiusi. La sua prima canzone era terminata. Non si aspettava una qualche reazione dalla platea, perchè da cantante navigato qual’era sapeva benissimo che a teatro si applaude solo alla fine dello show. Sapeva che ci sarebbe stato solo silenzio. Nessuno avrebbe fatto volare una mosca. Ed infatti così avvenne, fino…uno starnuto in prima fila. Il cantante si sorprese per quell’atto così casuale ma tutto sommato maleducato. Aprì gli occhi dirigendo lo sguardo verso il punto in cui aveva udito il suono…

Ho sempre pensato che sia importante che le leggi che ci governano debbano sancire una parità tra uomo e donna. Sarebbe folle pensare il contrario. E’ giusto dire che le donne devono avere le stesse opportunità lavorative degli uomini. E’ assolutamente giusto dichiarare che le donne abbiano la possibilità di entrare in politica, esattamente allo stesso livello degli uomini. Cioè, la parità deve essere sancita nelle intenzioni, nelle possibilità che vengono date, senza discriminazioni o soprusi, allo stesso livello, senza distinzione sessuale.

Quello che sta accadendo però mi fa storcere il naso. Si cerca di raggiungere la parità quasi obbligandola per avere lo stesso numero di uomini e di donne. Per esempio…favorire le donne imprenditrici facendo pagare loro meno tasse. Non lo trovo corretto, davvero. E tutto questo per permettere un 50-50 di “presenza” tra uomini e donne. Anche in politica è così: quando ci si candida come sindaci in un paese, per esempio, si è obbligati a presentare un certo numero di donne. Ma perchè devo essere obbligato? E’ giusto che una donna possa partecipare, questo sì, ma essere obbligati no. Che colpa ho io se le donne non si sentono attratte dalla politica?

A questo punto, mi chiedo questo. Probabilmente, tutti i punti vendita di Calzedonia sono gestiti da donne e di uomini non se ne vedono. Noi siamo una minoranza: questo significa che devo avere accesso a determinate agevolazioni se volessi aprire un punto vendita di Calzedonia? O, chessò, per i fioristi. Per me no. E se una donna volesse aprire un’officina per gommisti…avrebbe diritto ad uno sconto? Questo discorso ha sfiorato anche UGIdotNET. Se ci sono poche donne che vogliono fare le programmatrici, perchè devo incentivare la loro presenza ad un workshop? Ripeto: deve essere data la possibilità di partecipare (e questo ovviamente c’è), ma non accrescere il loro numero solo per fare in modo che ci siano 5.000 programmatori uomini e 5.000 programmatori donne. Non credete?

E’ giusto che uomini e donne abbiano le stesse possibilità/diritti/doveri, prendino per esempio lo stesso stipendio a parità di competenza/lavoro (cosa che oggi non accade – e questo è un miserabile errore), ma non a tutti i costi. Questo vale per loro e vale per noi. Noi uomini sicuramente siamo minoritari in tante mansioni, in tanti ambiti lavorativi, ma nessuno si sogna di far pagare meno tasse ad Igor Damiani, se quest’ultimo decidesse un giorno di aprire un’attività dove le donne la fanno da padrone. Altro piccolo esempio: ai miei tempi, nei licei c’era una stragrande maggioranza femminile. Negli ITIS – guarda caso la mia scuola – esattamente il contrario. Nessuno si sogna di livellare la partecipazione dei due sessi. Le ragazze devono poter iscriversi all’ITIS, e i ragazzi devono poter iscriversi ad un liceo (e beati loro!).

Questa sarebbe vera parità sessuale.

Send to Kindle
Community

Evento XeDotNet: tutto pronto per il viaggio…

Alle 9:00 sono arrivato in ufficio. Sto qui fino alle 13 circa, poi vado in stazione Centrale qua a Milano per prendere il mio treno che mi porterà fino a Mestre. Mio fratello ha già i biglietti nella sua borsa. Ora della partenza 14:05, ritardi imprevedibili, per cui escludiamoli. Avrei dovuto fare il viaggio con Sua Maestà Raffaele: in realtà saremo sullo stesso treno, ma i posti che siamo riusciti ad ottenere in prima classe non sono vicini. Anzi, lo devo avvisare. 🙂

Una volta arrivati, credo che avremo un po’ di tempo di relax, perchè l’evento comincia alle 20:00 circa. Voglio personalmente ringraziare Andrea Boschin che si è sbattuto per trovarci un hotel ed una camera dove io e mio fratello possiamo passare tranquillamente la notte. E anche Andrea Dottor che mi è stato detto essere l’incaricato che ci verrà a prelevare in stazione. E poi tutti gli altri, ma di questi parlerò solo al mio ritorno a cose fatte.

Sono davvero ansioso di partecipare a questo evento che per me è fuori dal comune, nel senso che è la seconda volta che partecipo ad un evento extra-UGIdotNET. La prima volta è stato nelle Marche nel Dicembre scorso. Sono contentissimo di poter conoscere nuove persone, di chiaccherare e scherzare un po’ tra di noi. Se non lo si fa nelle nostre community, dove lo si può fare, altrimenti??? Che poi ci sia Raf che ci parlerà di Workflow Foundation è tutto un (succulento) dettaglio, non vi pare? 🙂

Send to Kindle
Community

Il bloggare non è tempo buttato via!

Ho già scritto un post con lo stesso titolo sul mio blog di UGIdotNET. Nemmeno molto tempo fa, era il 16 Marzo scorso. Mi sono andato a rileggere e devo dire che è un argomento delicato che voglio tornare a trattare sotto ad un altro aspetto, se ce la faccio.

All’epoca parlai di come il tempo passato a bloggare non sia tempo buttato via, anzi. E’ una sorta di investimento che una persona fa, che prima o poi gli ritorna indietro sotto varie forme. Tento di elencarle in ordine sparso:

  • si trovano amici, persone fidate, colleghi ed altre persone con cui collaborare ed aiutarsi a vicenda
  • si scrive sul proprio cv che si ha un blog più o meno seguito
  • proposte di lavoro o di progetti (consulenze, assunzioni, libri)
  • mi è capitato di aver ricevuto in regalo sconti per software, suite intere e MSDN
  • molti ringraziamenti, ancora oggi, di gente che si certifica
  • chiaccherate infinite con Messenger
  • tante bastonate che servono ogni tanto per crescere un po’
  • crescita intellettuale, perchè grazie al Web si sanno tante, tante, tante, tante cose in più

Alcune di queste cose sono legate ad un profondo romanticismo nei confronti del principio di community. Altre sono più concrete e legate ad aspetti economici e materiali. Non vivo nel paese dei balocchi, so bene che è così. Io bloggo innanzitutto perchè mi piace scrivere, perchè mi piace condividere con voi quello che so, esattamente come voi fate con me. Ma bloggo anche perchè so che un giorno tutto il mio impegno verrà ricompensato nei modo più inattesi. Non me lo aspetto, ma so che accadrà. Il semplice fatto che Raffaele sia capitato sul mio blog per mandarmi un’e-mail per accordarci sul viaggio di domani a Mestre è già abbastanza. La prossima volta potrebbe essere chissà cosa…

E’ vero, posso fare tanti discorsi utopistici e romantici sulla community, ma sarebbe terrificantemente ipocrita non citare altri aspetti meno astratti, perchè tanto, dai, ragazzi, nelle nostre teste girano comunque. Alzi la mano chi di voi non ha scritto sul proprio curriculum la voce: “Ho un blog su xyz!” o qualcosa del genere. No? Volete sapere la verità? Ho scoperto il sito www.lulu.com e se ce la faccio scrivo un libro di qualche racconto sui bytes: non scherzo. Questo per dire che gestire il proprio blog apre porte e fa conoscere un lato di se stessi che magari non si conosceva nemmeno.

Indipendentemente da quello che può pensare tanta gente, penso di avere un forte senso di community, già solo per il semplice fatto che tento sempre di rispondere a chiunque mi interpelli. Nel mio piccolo, sia chiaro. Può essere via Messenger, via e-mail, via commento sul blog, in qualsiasi modo. Cerco sempre di dare una mano a tutti. Mi piace dire ed ascoltare. Mi piace partecipare alle cene. Se c’è l’occasione, mi piace aiutarvi. Mi piace scannarmi per dirvi quello che ho da dire. Non pensiamo per un attimo a community legata al nostro mondo on-line, quanto a stare assieme per dirci qualcosa. Per me community è principalmente questo. Ma, lo ripeto, oggi è necessario anche essere realisti, perchè non viviamo di caccia o pesca e nemmeno sulle palafitte, ma di tintinnanti (si spera) Euro, e non c’è nulla di male nel dire che dietro ogni attività fatta con un certo spirito di community, in realtà si cela una qualche forma di guadagno.

Send to Kindle