giugno 2007 Blog Posts
Eh, non voglio fare pubblicità... ma alzi la mano chi lavora con ASP.NET e non ha sottoscritto il blog di scott!
Credo che a quest'uomo vada fatta una statua, o quanto meno vadano donate un congruo numero di sorelle (io purtroppo non ne posseggo!! :P)
Comunque, a parte i salamelecchi vari, vi consiglio veramente di farci un salto ogni... spesso, perchè c'è sempre qualcosa che vi può interessare, soprattutto se, come me, siete curiosissimi verso le nuove tecnologie!
E... parlando di nuove tecnologie... ovviamente Silverlight mi viene in mente! :)
Quindi, pur essendo a Firenze e non avendo tempo per fare nulla, ho trovato...
La vita di un consulente è tempestata da imprevisti.
Tralasciando quelli (sempre presenti) della vita personale, gli imprevisti lavorativi possono rappresentare un vero problema. Ultimamente (cioè ieri :P) mi è capitato di dover assecondare un cliente per andare a Firenze (sigh.. caldo...) giovedi e venerdi, quindi con pochissimo preavviso, ed ho dovuto spostare un appuntamento che avevo per venerdi ad un altro giorno.
Questo per fortuna mi è successo perchè non avevo altri impegni assolutamente improrogabili.... ma altrettanto per fortuna mi "scelgo" abbastanza accuratamente, quando posso, i miei clienti per poter avere la possibilità di sapere come ragionano. Con alcune tipologie,...
Oggi niente Daily Issue: ho una laurea tra poco (non la mia, tranquilli, non è successo niente di irreparabile :P ) e sono incasinato in altre faccende ....
Però, il mio classico giro mattutino me lo faccio, e tra i tanti blog che visito ce n'è uno veramente carino, http://worsethanfailure.com/ (per chi naviga da un pò, mi pare che prima fosse il Daily What The Fuck, poi rinominato). Praticamente, una raccolta di stupidate relative al mondo informatico, non solo dal punto di vista dello sviluppo.
Bellissimo il post di ieri: http://worsethanfailure.com/Articles/Which-Cable.aspx
:)
http://scottwater.com/blog/archive/12091/
Può sempre essere utile ricordare che con 2005 anche VB.NET può beneficiare dello using! :)
Ultimamente, parlando con alcuni colleghi e sui newsgroup, mi è capitato di incorrere in qualche incomprensione sul funzionamento della sezione authorization.
Visto che è capitato così tante volte nell'arco di una sola settimana, direi che a sto punto lo scrivo qui, così almeno se me lo richiedono... rimando al link sul mio blog :)
Allora come è scritto qui:
http://msdn2.microsoft.com/En-US/library/acsd09b0(VS.80).aspx
At run time, the authorization module iterates through the allow and deny elements, starting at the most local configuration file, until the authorization module finds the first access rule that fits a particular user account. Then, the authorization module grants or denies access to...
Stavo paciugando in questi giorni con un piccolo programmino di statistiche... l'idea è tenere sotto controllo, senza troppe pretese, le solite cose che interessano in caso di statistiche, senza utilizzare un prodotto gratuito con immagini invasive ed assolutamente non-fashion (:P) e senza dover pagare per averlo. E ovviamente, essendo hostato su server non conosciuti, senza avere accesso ai log della macchina. In se, creare un programma semplice è un lavoro veloce di una mezza giornata, per conteggiare le classiche cose: accessi unici, pagine visitate, useragent, browser, referrer, etc etc. Preso dalla smania, ho deciso di customizzarlo un pochetto, sai...
Non è esattamente un Daily Issue.. ma ieri, per il progetto di cui parlavo tempo fa, mi sono ritrovato ad entrare nell'annosa questione del parametro Type dei famosi metodi dell'oggetto ClientScriptManager per iniettare codice JavaScript all'interno di una pagina, ed in particolare RegisterClientScriptBlock e RegisterStartupScript. In questi due metodi, sono sempre stato abituato dagli esempi a mettere come tipo this.GetType(). Questo sia che lo mettessi in una pagina direttamente, che in un custom control. Il dubbio mi è venuto ieri, quando ho sviluppato un CustomControl derivato da un mio CustomControl, ed ho notato che... lo script veniva duplicato! Dopo...
Stavo cercando in giro un piccolo tutorial per spiegare ad alcuni.. hem.. membri di un team per cui sviluppo come funzionano i progetti di setup, ed evitare di perdere un'ora a spiegarlo e trovarmi di fronte a espressioni di stupore come "gu" o simili .... Per fortuna hanno inventato ScottGu che mi è venuto in contro qualche gg fa (sigh.. non ho letto i feed di ASP.NET per qualche giorno.. altrimenti l'avrei visto prima :)) http://weblogs.asp.net/scottgu/archive/2007/06/15/tip-trick-creating-packaged-asp-net-setup-programs-with-vs-2005.aspx
Ricominciando (mah... direi per fortuna? :)) ad avvicinarmi al mondo della grafica, ho ricominciato ad avere alcuni problemucci legati alle diverse implementazioni del motore di rendering dei CSS.
In particolare, i problemi si hanno quando, come usuale, si testa tutto l'applicativo sotto explorer, e poi lo si porta a fare un "giro di prova" su firefox, o viceversa ... di solito quello che succede è ... beh.. Kabooom... :)
In particolare, il caso che mi è successo era l'allineamento di un div all'interno di un altro div. Io avevo usato (erroneamente) text-align, credendo che se va bene per il test va bene anche per...
Ebbene si, finalmente, dopo molte peripezie, sono riuscito a fare installare i validissimi ASP.NET 2.0 CSS Friendly Control Adapters che, per chi non li conoscesse, permettono di renderizzare la maggior parte dei controlli ASP.NET 2.0 con html compliant alle specifiche CSS.
Questo mi ha aiutato a prendere alcune delle applicazioni già scritte e "sfrondarle" di tutte quelle noiose tabelle per riportare allo splendore i DIV innati dentro di loro...
Risultato.. beh, sembra uno spot pubblicitario, ma le pagine sono _decisamente_ piu snelle e decisamente piu veloci nel rendering. Ed il cross platform non è neanche così distruttivo, se si prendono come assodate alcune differenze...
Non sempre i problemi tecnici sono quelli maggiori...
I problemi tecnici sono quasi sempre superabili, basta capire quanto tempo ci si vuole spendere e quante risorse.... ... mentre invece quando si è davanti a problemi di attitudine, noia, routine... le cose si fanno complesse!
In questa settimana sto ricominciando a spolverare il mio lato "grafico" piu di quanto avessi fatto nell'ultimo tempo... tra le mie varie prove con Silverlight (si si presot ricomincerò con i Daily Issue.. sulla 1.0... sigh....), qualche veloce digressione su grafica e photoshop che mi ha fatto ricordare che peccato sia non poterci lavorare di piu, alcuni progetti...
Questo è un anticipo del Daily Issue di domani.. so già che non avrò tempo, visto che ne ho un po da rubare al sonno, anticipo :)
Capita spesso di dover fare in modo di servire contenuto diverso dalle pagine web in un'applicativo ASP.NET. Siano questi fogli excel, pdf, e via dicendo.Mi capita spesso di avere anche il problema di non voler caricare questi elementi nel visualizzatore del browser, soprattutto nel caso di PDF o Excel, ma di dare all'utente la scelta di aprirli o salvarli su disco.Peccato che il browser sia abbastanza insistente e se viene servita direttamente una risorsa...
Questo è un daily issue piu strano del solito... ero salito qui per scrivere un piccolo issue su XML che ho avuto in questi giorni.... mi collego e dico "dai, che è da venerdi che non scrivo"... mi collego e vedo il mio ultimo Daily Issue... datato 6 giugno! Improvvisamente panico, controllo il Live Writer per controllare che non mi sia rimasto nessun fantasma nelle bozze... poi ricordo... ho passato giovedi e venerdi da un cliente fino a tardi (mooolto dopo mezzanotte :P) per buttare in produzione un programma rispettando scadenze che i nostri partner invece NON avevano rispettato... ed...
Non è un segreto che non ho moltissima fiducia nel framework Ajax: lo ritengo ottimo e ben fatto, ma molto spesso utilizzato a sproposito e senza effettiva cognizione di causa.
Mi trovo spesso a ragionare sul suo utilizzo o meno, nel senso che vedendo come funziona la classe di base, il codice javascript ed il prototyping parecchio complesso che gestisce la base tutto il framework Ajax, mi chiedo in certi casi se sia veramente necessario o meno!
Per esempio, ieri (notte... sigh) mi stavo interrogando sull'utilizzo di Ajax in un'applicazione per una singola form che aveva bisogno delle classiche DropDownList fillanti. Ho rispolverato...
Eheheh ok ok chiedo già scusa in anticipo per il titolo....
Cmq per chi se lo fosse perso, sul blog di Michael Schwarz c'è questo interessantissimo post che riassume tutti i tutorial che hanno a che fare con silverlight, compreso quelli presi dalle sessioni del MIX...
Allora, siete ancora qui? Andate a scaricare tutto!! :)
Ebbene si.... il mio tentativo di iniziare una demo per un cliente in 1.1 è stata messa da parte a favore della 1.0, ritenuta piu matura. A ragione, probabilmente, ma la 1.1 era sicuramente più figa ... :)
Comunque, una volta messe le pive nel sacco, mi sono messo d'impegno per replicare tutto quello che avevo fatto in 1.1 con 1.0, ho ovviamente incontrato molti dei problemi già visti che sono stati risolti in maniera simile. Le attached properties, invece, si comportano in maniera lievemente differente da quello che avevo descritto nel precedente post
In 1.0, utilizzando Javascript quindi, si hanno due...
In alcuni casi, mi sta succedendo di avere dei problemi con lo Streaming: probabilmente a causa della versione Alpha della release 1.1, alcuni video soprattutto quando ci sono effetto mirror o quando ce ne sono piu di due, ed i video sono troppo grandi e definiti, il mio PC schizza al 100% (ed il mio portatile non è proprio una schifezzina :P) ed il video perde sincronia con l'audio. Questo è dovuto al fatto che comunque il codice in alpha gira sulla macchina client, non su quella server, e questo porta a problemi di performance di questo genere. Questo può...
Daily Issue speciale della domenica :) Sto litigando da parecchi giorni con Silverlight (ma no? Ma dai? :P) come sicuramente chi legge anche solo ogni tanto il mio blog avrà capito. A causa di questo amore/odio, sono dovuto scendere a patti con le AttachedProperties che, per chi non lo sapesse, sono proprietà che possono essere associate ad un figlio da un padre, senza che il figlio abbia conoscenza del padre stesso. Sono vitali in Silverlight in quanto tutta la struttura è formata in termini di padre/figlio e la maggior parte degli oggetti deve interagire con le proprietà del canvas contenitore....
Era stata segnalata qualche giorno fa la piattaforma di Live Streaming messa a disposizione da Microsoft per Silverlight: http://silverlight.live.com. Basta il proprio Windows Live Id per avere a disposizione gratuitamente 4gb di spazio per far vedere al mondo quanto si è bravi con SilverLight, sia esso 1.0 o 1.1 (supporta entrambe le versioni). Peccato che il meccanismo di upload sia un tantino ostico: il funzionamento si basa su file .zip, che devono avere una determinata struttura, un file manifest.xml che contiene i parametri (che vengono levati dal file html.js, che rimarrà sul proprio web server o su un qualsiasi server...
Mi scuso se sono stato lontao dai Blog per qualche gg.. gli eventi in Microsoft, la continua mancanza di una qualsiasi connessione ad internet in casa mia, ed i clienti che NON mi permettono di navigare se non sui siti interni hanno creato non pochi problemi :) In questi giorni di follia, comunque, mi sono capitati come al solito parecchi problemi, ma l'ultimo piu insidioso è dovuto all'ottimo componennte iTextSharp che permette di creare PDF e salvarli o mandarli direttamente al client. Questa seconda opzione, per quanto semplice sia, mi ha datto qualche problema in quanto ho trovato in giro...