settembre 2008 - Posts
E così si conclude la breve serie.
Anche in questo caso al plurale. E anche in questo caso l'aspetto che ho avuto modo di apprezzare maggiormente è la completezza che si può ragguingere quando si uniscono punti di vista differenti. L'altro pundo di vista è quello di Igor... e direi proprio che Igor non ha bisogno di presentazioni !!
In ogni caso, come sempre, ecco la descrizione di ALL305: STSADM.EXE without limits:
STSADM.EXE: chi non l'ha utilizzato almeno una volta non si può definire un esperto di SharePoint :-)
La console da riga di comando è veramente piena di risorse, che non si finiscono mai di scoprire.
Amministrare e configurare SharePoint da Command Prompt non è una mania per vecchi sistemisti, ma diventa una formidabile risorsa per realizzare automazioni e migliorare la qualità dei servizi offerti. STSADM.EXE può anche essere esteso nelle sue operations, aprendosi così verso nuovi potenti ambiti di utilizzo.
La sessione verrà erogata da un doppio punto di vista: quello dell'IT Pro e quello del Developer... chissà cosa combineranno sul palco! :-)
Parleremo di scipting - non potrebbe essere altrimenti - ma ne parleremo provando a focalizzare l'attenzione sugli scenarie e sulle modalità di estensione.
E vedrete che non serve imparare a memoria, uno per uno, quei 2 o 3 comandi (:-S) disponibili out-of-the-box!!
Quindi - e metto le mani avanti - non vi reciteremo a memoria l'output di stsadm -help :-P
L'altro giorno, durante la messa a punto delle slide, ci siamo trovati a chiederci: "Ma secondo te, STSADM cos'è?".
Per una risposta che vada al di là di "è un programma che serve ad amministrare SharePoint" è altamente consigliata la presenza qui :-P
Terzo e penultimo appuntamento con la mini-serie.
Questo è al plurale. E vi assicuro che il divertimento, durante la preparazione, è ben più che doppio :-)
L'altra metà del plurale è Elisabetta Sasselli. Vedendola lavorare, e soprattutto lavorandoci insieme, mi stava venendo voglia di disinstallare Visual Studio e tuffarmi un po' più spesso nei meandri di SharePoint Designer! E non lo faccio giusto perchè con CTRL-SHIFT-B mi apre il browser quando io, invece, continuo a chiederemi dov'è finita la mia dll :-P
Comunque, io e Betta giocheremo con le DataView - e il titolo la dice già lunga: SB302 DataView and XSLT: codeless revolution!
Ecco l'abstract:
Qualcuno vi ha detto che non è possibile personalizzare siti SharePoint senza utilizzare Visual Studio? Ci avete creduto?
Allora non avete sentito ancora parlare della codeless revolution :-)
In questa sessione Claudio ed Elisabetta spiegheranno come sia possibile intervenire sui siti SharePoint per ottenere velocemente risultati sorprendenti, pur non avendo conoscenze di linguaggi di programmazione. Esempi concreti e demo “dal vivo” mostreranno come, con una buona padronanza di SharePoint Designer e una discreta conoscenza di (X)HTML e XSLT, si possa arrivare in poco tempo e con poco sforzo alla costruzione di soluzioni articolate e accattivanti, in grado di estendere in maniera efficace le funzionalità out-of-the-box della piattaforma.
La sessione è ovviamente incentrata sulle DataView, dissezionate e ricostruite con l'intento di illustrarne il rationale-behind.
Il mondo dataview ha un fascino particolare, a mio modo di vedere.
Innanzitutto perchè la componente tecnica trova, più che in altre occasioni, un essenziale alleato nell'inventiva e nella "visione".
E poi perchè gli strumenti a disposizione (data source controls e trasformazioni XSLT, prevalentemente) sono assai flessibili.
Ruotano intorno al "dato", lo estraggono, lo elaborano e lo presentano. E garantiscono sempre al programmatore/site-builder un buon livello di astrazione, diretta conseguenza dell'approccio dichiarativo su cui si fondano.
Più che in altri casi, qui una demo vale più di mille parole.
Ma la demo, quella no, proprio non ve la voglio anticipare. Venite a vederla live :-)
Come detto, ecco qualche altra "voce di corridoio".
Giovedì mattina si parla (anche) di... ALL200: InfoPath and Forms Services: practical approach.
Cioè:
Si tratta di un "tutorial" che guida alla scoperta di Microsoft Office InfoPath 2007 e Microsoft Forms Services.
La sessione è rivolta anche a chi non conosce questi prodotti, ma vuole scoprirne il potenziale e iniziare a sfruttarli in soluzioni reali.
Tutta l'esposizione sarà incentrata sulla realizzazione di un caso di implementazione reale.
Sì, la descrizione è giusta :-)
E' una sessione dal taglio decisamente pratico e abbastanza introduttivo.
Credo (e spero !) che sia l'approccio corretto nei confronti di un prodotto, come InfoPath, che si riesce ad utilizzare con buoni risultati dopo un po' di "gioco".
Il che non significa che sia un tool giocattolo. Tutt'altro. Probabilmente è il modo con cui siamo abituati ad affrontare lo sviluppo di form che ci fa dire "oh, ma è così facile ?".
E vi anticipo una considerazione: "No, non è sempre così facile".
InfoPath ha il suo caratterino, che va conosciuto per essere in grado di domarlo all'occorrenza :-)
Però, una volta messi in evidenza certi limiti, è una soluzione che va assolutamente valutata nel momento in cui si devono realizzare applicazioni basate, in qualche modo, su form elettroniche.
Considerazione, quest'ultima, che è avvalorata in maniera particolare in seguito all'introduzione di Forms Services (il motore di rendering e di calcolo di IP ospitato lato server, in poche parole le form compilabili e inviabili direttamente dal browser).
Insomma, proveremo ad inquadrare tutti questi argomenti in un'ora e un quarto, amalgamandoli nel contesto di un esempio che ci seguirà dall'inizio alla fine della sessione.
Ci si vede là :-)
Inizio a dare qualche anticipazione (ma non troppe :-)) sulle sessioni che terrò alla Microsoft SharePoint Conference 2008.
Inauguro la serie parlandovi di ... DEV400: Custom Field Development in SharePoint.
La descrizione recita:
Tramite campi personalizzati è possibile estendere le funzionalità out-of-the-box di SharePoint, mantenendo omogeneità nei confronti dell'infrastruttura e del layout.
In questa sessione verranno dapprima illustrate le tecniche di base necessarie per lo sviluppo di custom field.
A seguire verranno proposte alcune implementazioni più avanzate, a dimostrazione della flessibilità e della potenzialità di questa feature.
Per la mia esperienza i custom field sono una caratteristica tutto sommato poco nota.
Ed è un vero peccato perchè, una volta affrontata una curva di apprendimento iniziale non sempre banale, sono uno strumento decisamente interessante, che consente di portare a termine estensioni mirate e, a volte, inattese :-)
Uno degli aspetti che li rende, a mio modo di vedere, maggiormente complessi è il numero di building-blocks che si devono mettere insieme per far funzionare il meccanismo.
Per questa ragione la sessione sarà incentrata sulla disamina puntuale di ciascuno di essi, nel contesto di un "pacchetto" che deve essere uniforme e, in qualche modo, adatto agli usi che ne possono derivare.
Parleremo (più o meno in questo ordine) di:
- Field Type Definition
- Field Type Class
- Field Properties
- Field Rendering Control
- Field Rendering Control Templates
- CAML Rendering (l'ho messo per ultimo se no fuggite tutti :-))
Sto completando le demo. L'idea è quella di corredare ciascun "angolo di visuale" con un esempio che ne dimostri uno scenario di applicazione, provando anche a confrontare approcci diversi, qualora disponibili.
Quindi ci si vede là !
p.s. Approfitto per ricordare che oggi scade l'early-bird, che consente di risparmiare 60 euro sulla tariffa di iscrizione :-)
... e in un titolo assurdo si trovano sintetizzate tre cose speciali !
La collaborazione.
Il sottotitolo può essere "Dev e Site Builder, una miscela esplosiva" (e se volete vedere non una ma due esplosioni :-)).
Oppure, se vogliamo allargare il discorso al di fuori dello sconfinato mondo SharePoint, ci sta bene anche "Sviluppatore e Sistemista non sono come cane e gatto".
Quella che si tende a fare, in questi casi, è spesso una "suddivisione".
E, a volte, è una suddivisione necessaria. Pensate alla formazione, ad esempio, settore in cui è forte la necessità di categorizzare gli argomenti per offrirne una differenziazione basata sulle competenze (a livello di prerequisiti così come di obiettivi).
Però, se possiamo mettere in secondo piano l'aspetto delle conoscenze puramente tecniche, lo scenario cambia :-)
Il tuttologo, ad oggi per lo meno, non ha più senso di esistere. Troppe cose, troppo complesse, troppo ampie per essere conosciute in maniera approfondita.
Triste ? Realistico ?
Perchè mai ! In fondo "non sapere fare" è molto, molto diverso da "non sapere che esiste" o "non sapere a chi chiedere".
Io rientro nella categoria dev. So fare le "mie" cose (almeno sulla carta :-D). Me la cavo quando si parla di argomenti "itpro", me la cavo pure quando si parla di argomenti "da sitebuilder". Ma non ho quel "di più" per tirarmi fuori dagli inghippi di una infrastruttura di rete anomala o di una master page troppo particolare. Mi manca la "scintilla".
I progetti che si realizzano (e le demo sono uno di questi) non hanno nozione diretta di questa categorizzazione dei ruoli, ed è giusto che sia così, perchè nel risultato finale le tecniche e gli approcci si devono fondere in una soluzione fluida e omogenea, a prescindere dalla modalità con cui essa viene realizzata.
Questa omogeneità non può essere raggiunta (quasi mai, almeno) se viene meno una visione globale delle esigenze e dei requisiti. E questo non solo in fase di implementazione (dove forse è tardi) ma soprattutto durante la progettazione del sistema.
Ed ecco che le capacità non si misurano più con le competenze nel proprio settore, ma con la capacità di inquadrarle in un contesto più generale.

Un dev che sa "vedere" con gli occhi di un site builder rimane a contatto con la piattaforma che usa, dimenticandosi ogni tanto che "intanto via codice si può fare tutto" e, forse, riuscendo a non reinventare ciò che esiste e che, suo malgrado, è stato fatto meglio.
In questo faccio una critica che è anche autocritica. Ma con un'apertura che ritengo fondamentale e che è, in fondo, l'amalgama per il titolo di questo post.
Perchè una miscela è fatta di ingredienti.
Consentitemi una metafora gastronomica direttamente della mia terra.
Il pesto.
Il pesto si fa tra le altre cose con il basilico e l'olio.
Provate a preparare questa prelibatezza con un olio di bassa qualità e ... il pesto non viene un granchè :-(
Ovviamente, perchè le "competenze" servono e non sono prescindibili.
Dopo, però, provate a fare il pesto senza olio. Metteteci pure il basilico più buono di questo mondo. Viene bene ? Può darsi. Ma non è pesto !!
Nel pesto, probabilmente, la componente basilico è predominante. Questo è normale, anche perchè il bilanciamento in una ricetta non è dato da una divisione in parti uguali tra gli ingredienti.
Ed ecco che l'arte del bravo cuoco sta nel ricercare gli ingredienti giusti e nel saperli miscelare in proporzioni e in tempi opportuni.

In fin dei conti, parlo di cucina ma intendo, più in generale, la collaborazione di cui sopra.
Ed è curioso perchè ne sto parlando nel contesto di una piattaforma, SharePoint, che viene venduta ed è a tutti gli effetti collaborativa per definizione (il nome vorrà pur dire qualcosa, no ?)
Progettiamo soluzioni collaborative. Questo ci viene richiesto, in maniera più o meno diretta. Questo si prova a fare, in maniera più o meno efficace.
E ... Ah sì, un'altra cosa (last but not least, come si dice).
Le cose verdi.
Il pesto ha un colore verde intenso, brilla quasi.
Non credo di avere un colore preferito, come viene chiesto nei quiz sui giornali o nelle domande stile "se hai dimenticato la password, rispondi a questa".
Però adoro il verde del pesto (in realtà adoro la terra che lo produce).
E c'è un'altra "cosa verde" che mi piace un sacco, che è il gruppo in cui sono piombato a pesce dopo 4 anni di vita da libero professionista.
Il pesto mi sa che dovrò introdurlo io, perchè a in quella zona lì non si sa mai cosa mangiare (dopo che uno ha provato 84 tipi di tortellini e di ragù, le lasagne, la gramigna, la salama (aargh), la piadina, i gnocchi fritti, le crescentine e qui mi fermo perchè non vorrei far torto a nessun piatto tipico).
L'ambiente collaborativo è invece una delle tante cose belle che trovo.
E al quale spero di poter dare il mio contributo :-)
E' stata rilasciata da pochi giorni la September 2008 CTP di F#, il linguaggio funzionale che (e questa release ne è la prova) andrà ad aggiungersi alla suite di linguaggi supportata in maniera nativa da Visual Studio.
Don Syme, leader del progetto F#, linka qui la pagina di download aggiornata (sono state pubblicate alcune fix immediatamente dopo il rilascio della CTP).
Su MSDN è inoltre disponibile il F# Developer Center !
Questo il post con l'annuncio di Somasegar.