giugno 2007 - Posts
Cade proprio "a fagiuolo", come si suol dire, questo bel tool di gestione remota delle VM e del'amministrazione di Virtual Server.
Scaricabile da qui (x86 o x64)
E' ancora una pre-release, ma ad un primo utilizzo (primissimo, giacchè è su da 1 oretta) devo dire che è decisamente user friendly ... e comunque qualche buona feature c'è:
<quote mode="cut&paste">
- Direct control of local or remote instances of the Virtual Server service. IIS and IE browser are no longer required!
- Tabbed interface to quickly jump between Virtual Server hosts and guest VMRC sessions.
- Reusable saved states: this feature allows users to preserve a particular saved state and return to that state at any time.
- Multiple guest selection supported for startup/shutdown/save/display.
- Browse button navigation for media, hard disk images, ISO images, .VMC files, etc.
- Drag and Drop support for .VMC files, ISOs images, VHD and VFD files.
- Resizable desktop support for guests running Virtual Machine Additions (maximize VMRC window supported).
- Limited cut and paste of text from host to guest (only).
- A built-in utility to take JPG screenshots of running guests. Useful when filing bugs.
- Built-in error notification with Virtual Server eventlog viewer.
- A Virtual Networks Manager and Virtual Disks Manager that cover all features.
- Keyboard shortcuts (e.g. Ctrl-S to save state a guest).
- Create multiple guests at once.
- Create guest from parent (or multiple guests)!
- Automatic reconnect to a designated Virtual Server host.
- Toolbars in both Guest and Console Manager for quick access.
- Unlimited number of guests.
- Maximum of 32 Virtual Server hosts.
- Sorting on columns of guests so you can sort based on status and multi-select.
- Automatic detection of Virtual Machine Additions and notification.
- Detection of Virtual Server 2005 R2 SP1.
</quote>
From here to eternity, e grazie a Matthijs ten Seldam :-)
Siccome è ufficialmente una domenica d'estate, quindi uno potrebbe anche essere al mare (per lo meno uno che ci abita) ... ecco che da un'afosa stanza immersa nei dintorni di Milano ho pensato di dare un piccolo tocco di liguria alla skin del mio blog.
Niente più tazzina di caffè.
Al suo posto l'immagine di un luogo dove il caffè, vi assicuro, ha tutto un altro gusto.
Premessa: non me ne voglia chi, in questo momento, sta maledicendo gli integrali doppi e si sta chiedendo quando mai nella vita gli capiterà di usarne uno.
Il discorso che mi viene da fare è però questo: non conoscere certe nozioni matematiche non mi sta ponendo un limite nell'operatività del mio lavoro, ma nella comprensione profonda delle tecnologie che uso.
Esempio eclatante: LINQ. Alla fine imparare le sintassi delle query non è sta gran difficoltà (almeno rispetto al resto, vedi dopo:-)). Capire cosa fa il compilatore dietro le quinte ... beh ... un po' più complicato, ma anche lì si arriva senza sconfinare troppo dal nostro campo.
Volente o nolente, finisci però a discurere di funzioni come first-class-citizens.
O ti fermi e accetti qualche assioma, o scavi ancora un po' e apri un vaso di Pandora. Miiihhhhh ... la programmazione funzionale. Ma che caspita ... ???
Ok. Visto che è già un po' che 'sta roba gironzola, diamole una chance e vediamo di capire cos'è. Qui si fa dura (per me lo è stato, molto, e lo è ancora) perchè bisognerebbe riuscire a dimenticare per un secondo quelli che sono concetti ormai radicati da anni di programmazione imperativa. Appunto, negare il postulato e ricostruire su basi differenti. Aarghh.... [Consiglio Editoriale: Sto finendo questo libro, delle cose che ho letto su FP è per ora quella che mi ha spiegato di più]
Ammesso e non concesso di riuscire a raggiungere una comprensione tale da poter inquadrare le criticità e gli aspetti chiave di uno o dell'altro approccio ... poi la curiosità ti spinge a scavare ancora un altro po'. Magari andare a vedere come funziona realmente questo λ-calculus che un po' da tutte le parti ti segnalano come rationale-behind.
Pochi passi ancora, qualche link di distanza ... et voila. Oh My ... dite che è un problema se non mi ricordo neanche più come si scompone un binomio ?
Stessa identica sensazione (di smarrimento) ai Community Days, durante il panel del secondo giorno, ascoltando Raf sul MicroFramework [Sostituire matematica con fisica elettronica]
Umpffff :-(
La regola dice: gli expression trees sono immutabili.
Il che evidentemente è un male e un bene.
Un bene perchè l'immutabilità riduce i (nostri) potenziali danni. Tanto più che, visto che un expression tree non è esattamente la struttura dati più semplice che ci possiamo immaginare, probabilmente la probabilità di danno non è così bassa.
Un male perchè, se proprio una modifica la dobbiamo effettuare, la via è un po' più complessa.
In questi giorni sono state proposte (almeno) due soluzioni.
Jomo Fisher ne presenta una nel suo blog, basata su visitor pattern e conseguente sostituzione dei "pezzi" da modificare.
Aaron Erickson sta sviluppando, invece, un progetto (MetaLinq) il cui nome è abbastanza esplicativo ! La tecnica che propone per l'editing degli expression trees è esposta tramite un ExpressionBuilder che prende in pasto un expression tree, ne crea una shadow copy modificabile ed è in grado di generare il corrispondente expression tree di output con una semplice ToExpression ().
Due approcci interessanti che meritano un'occhiata più attenta.
Con i tavolini già ci siamo.
Ora è tempo di pensare ai tostapane.
La tecnologia c'è e dà supporto, lo spazio ora è per la fantasia e le capacità di marketing e di previsione del mercato.
E chissà che qualche interessante prodotto non venga adottato in contesti domotici, piuttosto che in una supply chain industriale ?
In fondo, basterebbe taggare la cotoletta, interrogare il frigorifero e cominciare a cucinare seguendo la ricetta a video.
Ora forse fa molto geeky. Ne parliamo tra qualche anno ?
Bellissimo e troppo vero ... mmmhhh ... andiamo a dare una controllatina alle slide :-)
Fonte: How NOT to Use PowerPoint
E' di questi giorni l'annuncio dell'inclusione di IIS7 come feature disponibile anche con l'installazione "minimale" di Windows Server 2008, nota come Server Core.
Bene ottimo fantastico.
Lo dico con un po' di sarcasmo perchè ... no, non hanno aggiunto il supporto al framework .NET. Quindi IIS, ma limitato alle funzionalità unmanaged. Contenuto statico, ASP, PHP etc.
Dalle mie parti si dice "megiu che ninte" (meglio di niente).
Però ... No .NET ? Ahi ahi ahi ...
La assenza del .NetFx viene in un qualche modo giustificata (sui forum, anche in qualche articolo) con la difficoltà di ottenere una versione sufficientemente componentizzata da essere installabile in un contesto, in un qualche modo, limitato.
Ora ... la disponibilità di un ambiente server Microsoft (quasi) privo di interfaccia grafica e limitato nelle capacità (per ridurre la potenziale superficie di attacco, più che per ragioni di performance) è una gran bella news.
Nel frattempo ci sono state altre belle news, però, da alcuni anni a questa parte.
Sembra che qualcuno abbia rilasciato un ambiente di esecuzione virtuale chiamato .NET (anno: 2002) :-)
Sembra anche che sia venuto bene, tanto da rappresentare la base per la stragrande maggioranza dei nuovi prodotti o delle loro nuove versioni (Dynamics* BizTalk SharePoint ...).
Un po' di tempo fa si prevedeva un'integrazione assolutamente spinta all'interno del kernel dell'OS.
Forse ci si arriverà, intanto però abbiamo iniziato a vedere versioni del runtime funzionanti su dispositivi mobile, embedded, micro, su architetture e sistemi operativi diversi, ospitato da plug-in per i browser.
Ah, poi nel frattempo qualcuno si è inventato quella gran fi***a che è PowerShell (pensa un po', altro che bash, qui le pipe veicolano oggetti .NET).
Ora (anno:2007) viene rilasciato un sistema operativo server, giudicato e promosso come robusto e affidabile (ed è così probabilmente) ... e se ne limitano in questo modo le facoltà di gestione ?
Non sono in grado di comprendere a fondo le difficoltà di integrazione del .NET Framework in W2K8 Server Core, ma credo di poterne percepire la mancanza !
Io sono assolutamente convinto che .NET sia stato (e sia tuttora) *la* rivoluzione degli ultimi anni.
Di sicuro questa convinzione non viene intaccata da quella che, probabilmente, è più una carenza di timelining piuttosto che tecnica.
Ma secondo voi, leggendo questo post (fonte MSDN) qual è l'impressione che ci si può fare ?
Estrapolo una frase, la potete leggere alla fonte e verificare che il contesto non è stravolto:
The combination of IIS7 and the Server Core installation provides an extremely secure, reliable and scalable hosting platform for non-ASP.NET Web sites and applications because this installation option is completely streamlined with all unnecessary services and components removed.
[cut]
For Web hosters, it’s a cost-effective, more scalable Web server for delivering reliable Web hosting to a broader set of customers, particularly with the new FastCGI module, which provides fast and reliable hosting of PHP and other Web frameworks.
Va bene fare autogol ... ma anche la mira bisogna prendere ?
Fortemente consigliato se dovete cambiare umore mattutino.
Sono ancora qui che ridacchio sotto i baffi :-)
http://lolcode.com/
Me lo segno da guardare per la settimana a venire, quindi questo post è fondamentalmente un memo :-)
Comunque SLINQ (hostato su codeplex) è (cit.) un'implementazione di LINQ basata su streaming dei dati.
Interessante, almeno a leggere la presentazione del progetto, questo punto:
[cut]
The collection classes generate events that the StreamAdapters listen for and propagate as needed. So unlike the built-in IEnumerable-based implementation where the iterators are forward-only, this implementation will respond to changing values in the source data.
Sto dedicando questi ultimi giorni allo studio di una tecnologia relativamente nuova e, di conseguenza, con scarsa documentazione a corredo. (Quale ? .... curiosoni ... ne parlerò presto comunque).
La scarsa documentazione a cui mi riferisco è un file chm, piuttosto completo a dire il vero. Null'altro, almeno per ora.
Questo mi ha portato a riflettere un po' su quanto sia diverso apprendere da fonti strutturate in maniera diversa dal classico libro.
Credo ci siano interi corsi, universitari e non, dedicati a queste tematiche (e mi interesserebbe conoscere come queste vengono affrontate in un tale contesto, perciò se volete faccio due chiacchiere volentieri :-))
Il mio pensiero è questo.
Prendiamo il dato grezzo. Forse non ancora definibile come informazione, partendo dal presupposto che l'informazione necessiti di una, seppur minima, strutturazione.
Il classico libro (ma lo stesso vale per gli articoli, i whitepaper, i saggi, ... insomma, cambia forse l'ampiezza della trattazione, ma ci sono punti in comune) presenta, o almeno dovrebbe presentare, le informazioni in maniera organica e fluida. Qui sta lo sforzo e la brillantezza dell'autore, che trasforma il dato grezzo in qualcosa di assimilabile in maniera semplice dal pubblico al quale si rivolge. In un libro i contenuti non sono necessariamente filtrati, ma semplicemente riorganizzati con lo scopo finale della didattica. Un libro serve per comunicare, oppure, vista in ottica diversa, per imparare.
Un chm (come esempio di ipertesto, se volete) si pone, a mio giudizio, un fine leggermente differente. Parlo dei chm di documentazione di un prodotto o di una tecnologia, perchè è chiaro che questo è solo un formato e che i contenuti e la struttura che viene scelta ne cambiano radicalmente la prospettiva. Dicevo, comunque, che un chm struttura le informazioni in maniera differente. Estendete pure il discorso al modo di presentare i dati di un sito web. Riferimenti continui ad altre sezioni, informazioni più mirate e circoscritte, poco contorno e molta sostanza pratica. Dal mio punto di vista, l'attività (fondamentale) di organizzazione mnemonica-mentale dei contenuti appresi è del tutto demandata al lettore. Quella che viene proposta è una struttura, più o meno complessa e ramificata, ma comunque labile, che lega un argomento all'altro.
Così come per un libro è vitale la capacità di illustrazione/contestualizzazione/organizzazione che l'autore dà ai contenuti, allo stesso modo in una documentazione ipertestuale è necessaria una buona definizione della relazione tra i contenuti. Però il lettore è molto più libero di percorrere queste relazioni.
Questa libertà è un bene o un male ?
Ah ... ovviamente dipende (come sempre, d'altra parte).
Per un riferimento, magari rapido, magari su argomenti già noti, credo che la libertà di scorrere lungo un percorso sia un bene, e di lusso pure !
Per apprendere, da zero e per bene, un argomento, secondo me questa libertà rischia di essere nociva.
Perchè dispersiva, ecco perchè.
Perchè all'inizio personalmente preferisco essere guidato nell'apprendimento.
Non è per pigrizia, nè per evitare lo sforzo mentale di contestualizzare le informazioni.
E' che contestualizzare un informazione è un compito difficilissimo che, a mio parere, richiede un livello di conoscenza delle stesse piuttosto elevato.
Ci sono mille se e mille ma.
Alcuni, per esempio:
- Rischio che l'autore di un libro offra una contestualizzazione non corretta (ma esiste una contestualizzazione corretta ?)
- NON ESISTE una sola forma di organizzazione e di strutturazione dei contenuti (quindi non si può fare un XCOPY di un libro verso il nostro cervello)
- Estrema dipendenza dalla capacità didattica dell'autore
Il fatto è che, sarà l'abitudine, sarà l'educazione, ma sono sempre stato abituato ad avere della carta fra le mani.
Che non significa "beh, allora stampati il chm !".
Proprio perchè un ipertesto è, per natura, "costretto" se viene stampato.
Credo che ancora mi serva una pagina con dei caratteri sopra, con articolo predicato e complemento oggetto, con la intro un po' distensiva ma che ti appassiona all'argomento (i preliminari ;-)), con l'idea di veder accumulare le pagine sulla sinistra ed avere una sensazione, anche tangibile, dell'avanzamento e del progresso didattico.
Anche con il piacere di portare a termine una lettura e di andare a spulciare la virgola in una documentazione online.
Solamente ... dopo !