Un po' di storia
Sto leggendo il bellissimo libro di Dino & Andrea, "Microsoft .NET: Architecting Applications for the Enterprise" e mi ha incuriosito questa loro osservazione alla pagina 362: "[...] Microsoft Foundation Classes (MFC) offered more than a decade ago an architecture with some points in common with MVC - particularly, the Document/View (DV) model. DV can be seen as a version of MVC where the view and controller are fused together. We really don't know whether the MFC team intentionally discarded MVC to embrace DV; our feeling, however, is that DV blossomed autonomously during the design by simply applying correctly and diffusely...
Visto l'interesse che ha suscitato l'ultimo post, ho scritto a Brad Abrams chiedendo conferma per la mia supposizione e dettagli sulla storia dell'interfaccia IValue, lui mi risponde subito indirizzandomi a Brian Grunkemeyer e stamattina trovo nella mia casella email, scritto da Brian, questo splendido pezzo della storia di .NET:
This is a good question. I was digging through the history of this file to see if I could figure out what happened, and it’s not clear. We’ve had this “hole” in the TypeCode enum since October of 2000, and I can’t find an older set of bits. But, I’m sure...
Oggi Raf sul messenger mi chiede se conosco un modo piu' diretto per capire se un tipo sia primitivo oppure String o DateTime (questo per evitare degli if...). Pensandoci un po', arrivo a questa soluzione:
(int)Type.GetTypeCode(type) > 2
dove type e' il tipo in causa. Lui prova e mi dice che va benissimo mentre io gia' sto pensando di bloggare questa riga di codice :-) L'enum TypeCode infatti, contiene nella sua lista di valori maggiori a 2 tutti i 12 tipi primitivi piu' il DateTime e lo String, proprio quello che voleva Raf. A questo punto gli chiedo come denominare questa categoria di...
Pochi forse sanno che il nostro amato chief software architect è anche il coautore di un davvero bellissimo risultato di combinatorica sul cosìdetto problema delle frittelle :-) (in inglese "pancake problem") insieme al vincitore del Premio Knuth per 2002 (una specie di Nobel per l'informatica teorica), il Prof. Christos H. Papadimitriou. Insieme, sono riusciti all'inizio del 1978 (Bill aveva appena compiuto 22 anni) a dimonstrare che per fare il sorting di una permutazione di ordine n ci vogliono non più di (5*n+5)/3 flip (o prefix reversal) e non meno di 17*n/16 flip. Vale la pena di scaricare (e leggere) il...
Leggendo questo articolo apparso oggi:
G. Pollice, "Great art and the craft of software development", The Rational Edge (July 2005)
mi sono ricordato di questo post di Andrea Boschin: "Una via italiana al software?". Sembra che davanti a opere di Michelangelo, da Vinci, Tiziano, Caravaggio, Stradivarius, Amati, qualcuno ha pensato a Donald Knuth, Grady Booch, Ken Thompson, Dennis Ritchie, Ivar Jacobson, David Parnas, Kent Beck, Martin Fowler, James Rumbaugh, Niklaus Wirth, Robert Martin.
Ed ecco come, alla domanda di Andrea "perchè i principi che hanno dato vita a delle così efficaci ed apprezzate soluzioni non vengono applicati anche in campo informatico?", il Prof....
La tesi di Brad Abrams, ormai pura storia:
B. Abrams, "The Distributed Object Dilemma. A Technical Overview of Two Standards for Distributed Computer Systems", Honors Report, Department of Computer Science, College of Engineering, North Carolina State University (1997)
33 pagine sul comodino, da leggere con un sorriso nelle ore piccole :-)
Sapevate che Krzysztof Cwalina è anche uno dei più veloci nuotatori polacchi? E un'altra cosa carina, ha fatto la tesi di laurea con una professoressa italiana.
Un pezzo di storia: nel video di questo post, dal minuto 6:13 al minuto 10:28, Brian Grunkemeyer racconta come gli è venuta l'idea delle classi statiche. E' iniziato tutto da un suo bug nella versione 1.0 del Framework: il metodo System.Environment.HasShutdownStarted non era ai tempi static, e quindi poteva essere chiamato solo tramite reflection :-)
Lo racconta anche in SLAR, alla pagina 178
On Topic: Che legame c'è tra il linguaggio BASIC e Albert Einstein?
Off Topic: Ma tra Albert Einstein e Silvio Berlusconi?
I link interessanti che trovo in giro, da un po' di tempo li "furlo" qui (l'RSS del mio furl è questo), risparmiando così lo spazio del blog e la vostra attenzione per cose magari più originali. Però questo, "The Faces in Front of the Monitors", è troppo atipico per non postarlo. Nella scelta dei personaggi (che mischia buoni e cattivi) scopro non pochi nomi giovanissimi...
Me l'ha mandato il mio amico Nicola Venditti, che ogni tanto si ricorda del mio debole per la storia.
Sembra che questi due articoli:
H. Edward Roberts, W. Yates, "ALTAIR 8800 Minicomputer, Part 1. The most powerful minicomputer project ever presented - can be built for under $400", Popular Electronics, Volume 7, Number 1, (1975) pp. 33-38
H. Edward Roberts, W. Yates, "ALTAIR 8800 Minicomputer, Part 2. Practical use of the computer, including programming", Popular Electronics, Volume 7, Number 2, (1975) pp. 56-58
scatenarono nei primi giorni dell'anno 1975 in Paul Allen e Bill Gates (quando Microsoft non era ancora nata) la voglia di sviluppare Altair BASIC. Li potete leggere col tocco originale, qui. Ne vale la pena perché troverete frasi...
Le nostre amate parantesi graffe si chiamavano prima, direi molto funky, SECTBRA e SECTKET :-) Il linguaggio in cui si scriveva così, BCPL, un antenato in linea diretta di C, è stato progettato 38 anni fa da Martin Richards. Di sorprendente vigore, l'ultimo rilascio di questo linguaggio porta la data del 23 aprile 2004!
50 anni fa sbarcava in Italia il primo computer dell'Europa continentale. Strana sensazione sapere che venne messo in funzione a qualche centinaia di metri dal posto dove abito :-)
Dettagli sull'incontro di domani a lui dedicato, qui.
Ieri ho ricordato Mary Kirtland qui e qui. Oggi tocca a Don Box ricordarla.
La cosa bella è che trovo come referrer al mio post su Mary ("Mary Kirtland ovvero la Super COM Woman") qualcuno che alle 2:47 AM cercava su Bloglines Citations pagine che linkano Pluralsight (dove Don ha il suo blog). Alle 4:32 AM, Don postava "Blast from the Past - CLR circa 1997". Gli ho fatto ricordare Mary??? :-)
Bill Gates, in un venerdì di settembre del 1997, iniziava così il suo speech al PDC di quell'anno:
"We've used this PDC as a really major milestone, in terms of our message to developers, about how to build modern applications."
Veramente una gran pietra miliare, per il fatto che con la sessione di Mary Kirtland, la Super COM Woman - altro che DataGrid Girl :-) - si sono messe le basi del futuro CLR. Verso la fine dell'anno uscirono due suoi articoli su MSJ che si sono mostrati lungimiranti:
M. Kirtland, "Object-Oriented Software Development Made Simple with COM+ Runtime Services", Microsoft Systems Journal,...
Perché IKVM.NET si chiama IKVM.NET? La risposta arriva direttamente da Jeroen Frijters, il suo autore, in una mail di oggi:
"Originally it was I<<K.VM.NET, too make fun of the fact that Sun prefixes everything with a J, but Radio (my weblog software at the time) didn't like the << characters.".
Oggi quando ho postato della nonna, mi è sfuggito il nonno... il signore Donald William Bray :-)
Intanto che ci siamo, ho fatto subscribe al blog di Tim Bray, il tizio che inventò nel 1996 l'XML e oggi Technology Director a Sun. Il blog non è tecnico però è pieno di cose tenere; fra le tante, a me è piaciuta questa frase:
Poetry is like blogging; more write it than read it.
Curiosi di sapere qual è stata la prima frase SELECT (a quei tempi, esattamente 30 anni fa, SQL si chiamava SEQUEL, da Structured English QUEry Language)?
Find the names of employees in the toy department.
SELECT NAMEFROM EMPWHERE DEPT = 'TOY'
The mapping returns the entire set of names which qualify according to the test DEPT = 'TOY'.
Scritta ovviamente proprio dai due creatori di SQL: Donald D. Chamberlin e Raymond F. Boyce. Se volete leggerla col font di 30 anni fa, la trovate qui alla pagina 253 (pagina 5 del PDF).
Vi ricordate il mio post sulla bisnonna di Java (la signora Margaret Carolyn (Svensdötter) Morrison)? Oggi mi tocca presentarvi la nonna dell'XML, la signora Jean Bray (mamma del co-padre dell'XML, Tim Bray).
Chi si immagina che MS in MSCorLib.dll sia l'acronimo per Microsoft, si sbaglia :-) MS in questo caso vuol dire Multilanguage Standard! Parola di Jeffrey Richter
E' morto Bob Bemer che nella sua vita ha avuto tanti bravi figli... Alcuni di questi:
il codice ASCII
le sequenze di escape
gli 8-bit per byte
il nome COBOL
il concetto di registry
il backslash
il primo sistema computerizzato di animazione 3DNel '59 proponeva il word processing mentre nel '71 lanciava un segnale d'allarme sul problema Y2K...
Alla domanda "How did you arrive at the name COBOL?" ecco la sua risposta: "Cobol to me has a nice round sound - a lyrical quality (drawing an imaginary hourglass in the air). The sound reminds me of a women’s figure."
Raccontavo ad Andrea, in macchina, mentre andavamo al ristorante per la cena dopo il bellissimo workshop, quanto innamorato sono dell'Italia, quanto credo nell'Italia e negli italiani, come non ci sia più strada di ritorno per questo amore. Questi giorni ho preso una piccola vacanza e tengo le orecchie un po' lontane dal canto delle sirene .NET e così ho scoperto una cosa forse poco conosciuta dagli italiani: che tra tutti gli uomini andati sulla Luna, l'unico NON-nato negli Stati Uniti è nato a Roma! Michael Collins, Apollo 11 Command Module Pilot
In questo post di una tenerezza forte, del papà di Java, potete leggere la storia della sua nonna (l'estate scorsa ha festeggiato il 98° compleanno!) e ammirare la foto di niente altri che la bisnonna di Java :-) la signora Margaret Carolyn (Svensdötter) Morrison.