Monday, February 15, 2010
Ieri mattina 14 febbraio alle ore 8.56, a distanza di esattamente 2 anni dalla sorellina Claudia è nato Alberto, che, come la sorellina, pesa esattamente 3300g!
Un enorme grazie a mia moglie Erika che è riuscita nella titanica impresa di cullare nel pancione questo bambolotto per 9 mesi e nello stesso a tempo tenere a bada e a non far mai mancare una coccola e una carezza al mio diavoletto:
Auguro a tutti voi le mie stesse soddisfazioni.
Technorati Tags:
alberto,
claudia
Sunday, November 01, 2009
E’ di qualche ora fa l’annuncio di Paul Cowan che la versione “live” di horn è online:
http://www.hornget.net/packages/
Se avete letto il mio post di qualche giorno fa sapete che horn è un software che permette di scaricare e installare in maniera totalmente automatizzata una svagonata di librerie e framework open source tra i più usati nel mondo .net.
Ora gli autori hanno fatto di più. Hanno messo a disposizione un sito che una volta al giorno si scarica tutti i sorgenti aggiornati dei pacchetti, li compila, e ce li mette a disposizione sotto forma di binari belli e pronti.
Complimenti a Paul e a tutti quelli che hanno collaborato a questa magia.
Chi di voi utilizza in qualche progetto l’ottimo framework Rhino commons sa bene che il progetto è fermo da un po’ di mesi e che Rhino commons fa (faceva) parte dell’ottima suite di strumenti Rhino tools sviluppati nel corso degli anni dall’iperproduttivo Ayende.
Qualcuno probabilmente si sarà accorto scaricando il trunk di Rhino tools che allo stato attuale non è possibile compilare Rhino Commons perchè Ayende, da qualche settimana, sta rimettendo a posto la solution estrapolando tutti i vari progetti e spostandoli su github. Qui trovate l’elenco completo:
http://github.com/ayende
Fatto sta che a me Rhino Commons mi serve per un progetto e mi serve che giri con il trunk di Castle e con NHibernate 2.1ga.
Così, d’accordo con Paul Cowan, leader del progetto horn, di cui vi ho già parlato qui, ho deciso di fare un po’ di giardinaggio alla solution di Rhino Commons: l’ho estrapolato dalla gigantesca solution di Rhino tools, ho sostituito le dipendenze dai progetti con dipendenze ai binari e ho sostituito lo script di build originale di nant con un nuovo script di build basato su psake, come ha già fatto Ayende per tutti gli altri progetti di Rhino tools.
Il risultato lo trovate qui:
http://github.com/lorenzomelato/rhino-commons
il progetto compila e i test passano tutti quanti.
Attualmente il codice è quello della revisione r2200 del repository svn originale, ma conto sul mio poco tempo disponibile e sull’aiuto della community per sistemarlo in modo da farlo girare con il trunk di Castle e NHibernate 2.1.
Paul Cowan promette che a breve sarà possibile installare il “nuovo” Rhino Commons anche da Horn.
Technorati Tags:
rhino tools,
horn
Wednesday, October 21, 2009
Se a qualcuno fosse sfuggito, vi segnalo che qui potete scaricare il training kit per VS2010 e .NET framework 4.
Sono una serie di Hand-on-labs, presentazioni e demo su questi argomenti:
C# 4.0
Visual Basic 10
F#
Parallel Extensions
Windows Communication Foundation
Windows Workflow
Windows Presentation Foundation
ASP.NET 4
Windows 7
Entity Framework
ADO.NET Data Services
Managed Extensibility Framework
Visual Studio Team System
Ho visto che c’è qualcosa anche su ASP.NET MVC 2.
Friday, October 16, 2009
Finalmente il mio collega, nonchè caro amico, Roberto Penzo si è deciso ad aprire un blog dove esprimere le sue illuminate e romantiche idee sul “vivere il lavoro”.
L’abstract:
“Lavorare. Come passare questo tempo? Quali occasioni per viverlo bene? Pensieri su ciò che concentra tante attese e impegna così tanta vita. Luce su aspetti belli e a volte entusiasmanti di questa esperienza solitamente definita grigia.”
e il link:
http://thedrop-lagoccia.blogspot.com
No, non è la condizione tipica di qualche amico particolarmente spendaccione…
Un gruppo di ricercatori di una università cinese è riuscito a creare un dischetto delle dimensioni di 8 pollici e mezzo in grado di assorbire tutte le radiazioni elettromagnetiche nel suo intorno.
Sembra che uno dei possibili scenari applicativi possa essere la costruzione di nuove celle solari particolarmente efficienti.
Speriamo che sia un passetto in avanti verso l’indipendenza dall’ oro nero.
Fonte: http://www.popsci.com/technology/article/2009-10/black-hole-fits-your-pocket
Wednesday, October 07, 2009
Era il lontano 2000 quando insieme a Diego e agli amici di Padus realizzai il sito del ViaVai, un opuscolo/giornaletto settimanale con gli eventi/spettacoli/cinema della provincia di Rovigo.
Classic ASP e Access. Tutto qua.
Semplice e spartano fin che vuoi, ma pur sempre un cms completo di gestione dei banner pubblicitari era.
E dopo 9 anni è ancora li, a servire i suoi affezionati… ehhhh, son soddisfazioni!
E voi? qual’è stato il vostro primo sito web?
Technorati Tags:
viavai,
padus
Tuesday, October 06, 2009
Qualcuno di voi si è mai trovato nella necessità di utilizzare nello stesso progetto Castle, NHibernate, Fluent NHibernate, Rhino tools, MVCContrib, ecc.?
Chiunque (e credo siano molti) si sia mai trovato in una situazione del genere sa bene a cosa il titolo del post si riferisce.
Tutti questi raffinati e fantastici strumenti hanno una serie di interdipendenze tali da rendere veramente difficile e tedioso l'aggiornarmento dei binari ad una nuova versione quando si ha la necessità di lavorare con l'intero stack di framework ALT.NET in un unico progetto.
L'obiettivo di Horn è di rendere estremamente semplici le operazioni di scaricamento e build dei framework open source di cui abbiamo bisogno nel nostro progetto. Si, ma semplici quanto?
Semplici quanto aprire la command line e digitare il comando seguente:
horn -install:nhibernate
questo(apparentemente) innoquo comando scatena una serie di operazioni tali che alla fine del processo ci si ritrova con una cartella da qualche parte con la build più recente (buildata dal trunk) di NHibernate completa anche delle librerie interdipendenti (anch'esse buildate dal proprio trunk).
Potrò, a questo punto, prendere i binari e copiarli nel mio progetto sicuro di non avere conflitti di versione tra le varie dipendenze.
Ma come funziona questa magia?
Horn introduce il concetto di build descriptor che altro non è che un file DSL scritto in boo che descrive da dove un determinato pacchetto deve essere scaricato (sono supportati svn e git), come il pacchetto deve essere buildato e quali sono le sue dipendenze.
Le dipendenze descritte puntano a loro volta al proprio build descriptor e possono quindi essere scaricate e buildate a loro volta.
In questo modo è possibile ottenere la build dell'intero albero di dipendenze del pacchetto desiderato.
Horn, di default, ha al suo interno una cartella package_tree che contiene i build descriptor della maggior parte (se non di tutti) dei framework e delle librerie più diffuse nella comunità .net. Ma è possibile costruire i propri build descriptor in maniera abbastanza semplice o contribuire al progetto inviando i build descriptor di librerie non ancora presenti nel package_tree.
Come ottenere Horn?
Horn è hostato su google code qui: http://code.google.com/p/hornget/
E' possibile scaricare Horn con svn o TortoiseSVN da qui: http://hornget.googlecode.com/svn/trunk/
Una volta ottenuto il sorgente è possibile buildare horn in maniera molto semplice lanciando il comando hornbuild.bat nella cartella src.
Completato il build sarà possibile lanciare horn dalla cartella:
src\build\net-3.5\debug
e iniziare finalmente a buildare i nostri framework preferiti!
Horn è un progetto iniziato dal gruppo Scotland ALT.Net. Il progetto è tutt'altro che maturo (credo non sia ancora entrato nella sua fase beta) e la direzione di sviluppo futura è ancora incerta. Da questo post del suo autore sembra (speriamo) che horn sia destinato a diventare un bellissimo sito web in cui ogni build descriptor del package_tree diventa una pagina web dalla quale è possibile scaricare uno zip con i binari dell'ultima build disponibile. Certo, sarebbe un bel boost per la nostra produttività…
L'autore, nel suo ultimo post datato 17 Settembre 2009 chiede aiuto alla community per la manutenzione e lo sviluppo del progetto, lamentando la recente tendenza di molti project leader di cambiare scm passando da svn a git o altro. Infatti, ad oggi, molti build descriptor di horn non sono aggiornati ai recenti cambiamenti di scm, rendendo di fatto inutilizzabili gli stessi (per esempio rhino, mvccontrib, sharparchitecture passati di recente su github.com).
Vogliamo contribuire allo sviluppo di questo meraviglioso progetto?
Qualche link sparso sull'argomento:
http://jasondentler.com/blog/2009/08/first-impression-horn/
http://thesoftwaresimpleton.blogspot.com/2009/07/breaching-castle-walls.html
http://thesoftwaresimpleton.blogspot.com/2009/04/horn-package-manager-introduction.html
Technorati Tags:
horn,
alt.net
Sunday, September 06, 2009
In questi giorni, per saziare la mia patologica curiosità, sto studiando i sorgenti di Castle, in particolar modo della parte di Ioc (Castle.Windsor e Castle.Microkernel).
Ho creato una piccola applicazione Web con ASP.NET MVC, ho preparato alcuni componenti di prova, ho preparato i file di configurazione, ecc… solite cose.
Poi ho scaricato una build di debug dell’intero stack di Castle e ho iniziato ad analizzarne i sorgenti e a colpi di debugger e Step into…
Tutto bene fino ad un certo punto del sorgente (sempre lo stesso), quando il debugger ha iniziato a dare di matto e il comando Step into e alcuni breakpoint hanno iniziato a non funzionare:
Metto il breakpoint, F5(Go), il debugger lo becca, F11(Step into) e niente… Step into mi salta a piè pari alcuni pezzi di sorgente e si ferma un po’ più avanti. Oltre a questo capita che alcuni breakpoint non vengano neanche considerati dal debugger.
Penso: “Non è che per caso i file binari non sono allineati con i file PDB o roba del genere?”. Riscarico tutto e riprovo. Stessa cosa.
Penso: “Non è che inavvertitamente (mmha…) ho cambiato qualche impostazione del debugger?”. Verifico e niente, tutto a posto.
Inizio a Googlare… e finalmente, dopo una mezzoretta trovo questo post nel forum di MSDN:
Visual Studio 2008 SP1 Stepping and Breakpoint Issues
che parla proprio di questo problema. In sostanza di tratterebbe di un bug che esce solo in situazioni molto particolari quando si lavora con codice multithread su macchine multi-core.
Prima di installare la patch indicata provo il workaround manuale. OK. Funziona.
Installo la patch indicata poco sotto tra i commenti:
http://code.msdn.microsoft.com/KB957912/Release/ProjectReleases.aspx?ReleaseId=1796
Posso continuare a studiare Castle.
Thursday, May 21, 2009
Ho pochissima esperienza con i vecchi batch file del dos ma mi rendo conto che sono spesso utilissimi per automatizzare piccoli (e grandi) task.
E’ possibile passare parametri a riga di comando ad un file batch come a qualsiasi altro eseguibile.
Il file batch può accedere ai parametri passati a riga di comando attraverso la sintassi:
%n
dove n è un numero che indica la posizione del parametro sulla riga di comando.
%0 si riferisce al comando batch stesso, da %1 in poi ci si riferisce ai suoi parametri.
E’ possibile applicare particolari “trasformazioni” ai parametri passati dette “sostituzioni”.
E’ possibile ottenere l’elenco delle sostituzioni con il comando:
call /?
Di seguito un riassunto delle sostituzioni possibili:
| %~1 | sostituisce il parametro %1 rimuovendo le virgolette; |
| %~f1 | sostituisce il parametro %1 con il percorso completo; |
| %~d1 | sostituisce il parametro %1 con la lettera di unità; |
| %~p1 | sostituisce il parametro %1 con il solo percorso; |
| %~n1 | sostituisce il parametro %1 con il nome del file; |
| %~x1 | sostituisce il parametro %1 con la sola estensione del file; |
| %~s1 | sostituisce il parametro %1 con i nomi brevi; |
| %~a1 | sostituisce il parametro %1 con gli attributi del file; |
| %~t1 | sostituisce il parametro %1 con la data e ora del file; |
| %~z1 | sostituisce il parametro %1 con la dimensione del file; |
E’ possibile combinare i modificatori per ottenere risultati composti, qualche esempio:
%~dp0 sostituisce il comando con la sua lettera di unità e il suo percorso;
%~dp1 sostituisce il primo parametro con la sua lettera di unità e il suo percorso;
%~nx0 estrae il nome del comando batch completo di estensione;
%~snx1 sostituisce il primo parametro con il nome nel formato breve;
Potete scaricare da qui un file batch di esempio che riassume le varie sostituzioni possibili.
Fonte: http://www.sgart.it/Page/default.asp?id=30&e=207
Technorati Tag:
msdos,
batchfiles