AntonioGanci

Il blog di Antonio Ganci
posts - 201, comments - 420, trackbacks - 31

marzo 2006 Blog Posts

[OT] Picchiaduro flash spassosissimo

Lo trovate qui. Ha un effetto antistress e in questo periodo ne ho propio bisogno Fonte: TGMOnline

posted @ martedì 28 marzo 2006 10:02 | Feedback (0) |

Operazione impossibile...

O quasi . Mission:Consegnare un software di cui abbiamo avuto le specifiche venerdì scorso, entro giovedì di questa settimana. Siamo in due a doverci lavorare. Non è molto complesso, ma neanche banale. Il primo istinto è stato quello di: mi butto a testa bassa . Poi ci è venuta in mente la frase di Kent Beck che sostiene di lavorare come se non si avesero limiti di tempo (non è vero, ma volevo fare la citazione ). Insieme abbiamo deciso di scrivere un sintetico documento di design della user interface, da cui abbiamo già avuto feedback dal cliente. Poi abbiamo scritto...

posted @ lunedì 27 marzo 2006 17:23 | Feedback (4) |

Annunci di lavoro "Simpatici"

Da questo post sul newsgroup it.lavoro.informatica ho trovato il link a questo blog su annunci di lavoro diciamo un pò superficiali. Mi piace l'idea

posted @ giovedì 23 marzo 2006 20:33 | Feedback (0) |

Cosa ha migliorato il nostro modo di sviluppare codice?

Cito a memoria (sorvolate sulla qualità della traduzione e della mia memoria ) una delle frasi di Kent Beck in XP Programming Explained Embrace the Change: La differenza tra ciò che noi crediamo essere limportante e ciò che lo è veramente genera spreco. La conseguenza di questo pensiero è di concentrarci sulla minimizzazione dello spreco. Questa semplice frase porta con se molto valore, almeno per me. Quante volte mi sono trovato in questa situazione? Io alcune. Soprattutto all'inizio della mia carriera lavorativa quando avevo poca esperienza. Kent Beck illustra l'esempio della differenza tra il giardiniere con molta esperienza e quello amatoriale. Il giardiniere con...

posted @ giovedì 23 marzo 2006 18:12 | Feedback (1) |

How to Write More Clearly...

Su reddit ho trovato questo link su: How to Write More Clearly,Think More Clearly, andLearn Complex Material More Easily Non l'ho ancora letto tutto, ma sembra interessante. Cercherò di applicare i consigli nei prossimi post del blog, vedremo se le visite saliranno

posted @ mercoledì 22 marzo 2006 14:09 | Feedback (0) |

Estrazione dell'elenco dei file di codice da un progetto C#

Per calcolare alcune metriche con Source Monitor sui sorgenti del progetto a cui sto lavorando ho fatto una piccola utility che estrae i path di tutti i file con estensione cs che non siano user interface (UserControl, WindowsForms, ecc.) da un file di progetto .csproj. La classe che contiene la logica è la seguente: public class ProjectFilesReader{ public ProjectFilesReader() { } public string[] ReadCodeFilesList(string path) { XmlDocument xmlDoc = new XmlDocument(); xmlDoc.Load(path); XmlNodeList nodes = xmlDoc.SelectNodes(@"/VisualStudioProject/CSHARP/Files/Include/File[@SubType='Code']"); StringCollection files = new StringCollection(); foreach(XmlNode...

posted @ martedì 21 marzo 2006 15:42 | Feedback (2) |

Reddit

Joel Spolsky ha lanciato l'iniziativa reddit in cui chiunque può inserire i suoi link preferiti i quali verranno poi votati. Lo scopo è di avere una lista di link interessanti. Io ho già inserito Coding Horror .NET and human factors   Fonte: What's the Joel Reddit?

posted @ martedì 21 marzo 2006 13:50 | Feedback (0) |

Refactoring Rename in Visual Studio 2005

Uno dei refactoring che uso spesso è il rename di una classe per rendere il codice più comprensibile, man mano emergono le responsabilità delle classi. Questo compito lo automatizza in maniera egregia Resharper che uso ormai da diversi mesi. Ho provato la stessa operazione tramite il refactoring di Visual Studio 2005, ma non mi chiede come Resharper se rinominare anche il file sorgente che contiene la classe, costrindemomi a farlo manualmente. Sono io che mi sono perso qualcosa oppure esiste un opzione nascosta che risolve questo piccolo, ma fastidioso problema?

posted @ lunedì 20 marzo 2006 13:44 | Feedback (3) |

Don't ask me again

Dopo che ho installato un update di Windows mi appare questo messaggio: Lo odio perchè non mi dà la possibilità di ignorarlo. Se premo Restart Later dopo qualche minuto ritorna in primo piano, solitamente mentre sono concentrato sul codice di un refactoring molto delicato su codice legacy  constringendomi al riavvio con relativa perdità di tempo e produttività. Mi piacerebbe che apparisse il check box: Speriamo che in Vista lo inseriranno.

posted @ lunedì 20 marzo 2006 13:06 | Feedback (2) |

Google Mars

Dopo Google Moon da slashdot ho appreso la notizia che google ha attivato anche Google Mars.

posted @ giovedì 16 marzo 2006 20:19 | Feedback (0) |

Un Pair Programming atipico

Ieri mi sono trovato a fare mezz'ora di pair con due candidati che l'azienda presso cui lavoro sta selezionando. Al termine ho compilato una scheda riassuntiva con le mie valutazioni. E' stata un'esperienza nuova che mi ha fatto capire come sia difficile valutare la qualità di un candidato in così poco tempo. Non volevo essere troppo severo perchè se una persona si mette in gioco in questo modo merita rispetto, inoltre non volevo essere troppo permissivo perchè se si assumono le persone sbagliate il danno che ne riceve il team di sviluppo è molto elevato. Alla fine ho deciso di basarmi...

posted @ giovedì 16 marzo 2006 10:21 | Feedback (3) |

Google ha acquisito sketchup

Oggi ho visto la notizia che Google ha acquisito sketchup Preso dalla curiosità ho scaricato la versione trial e ho seguito i tre tutorial proposti all'inizio. Sono rimasto stupefatto dalla semplicità d'uso e potenza del software che serve per realizzare modelli tridimensionali che assomiglino a schizzi su carta Non mi serve a nulla, ma mi è venuta voglia di comprarlo, solo per giocarci. Inoltre esiste un plugin di Google Earth per vedere e condividere con la community i modelli creati!

posted @ mercoledì 15 marzo 2006 19:51 | Feedback (0) |

Utilizzare Team System come sistema di Project Tracking

Sto utilizzando Team System come sistema di Project Tracking. La prima impressione è molto positiva siamo di fronte ad un prodotto potente e personalizzabile. Ho qualche difficoltà a legare le user story ai task, mi piacerebbe avere un sistema simile a VersionOne: dove ogni singola storia raggruppa i propri task. Non ho ancora avuto molto tempo da dedicare allo studio della personalizzazione del software, quindi se ho detto una castroneria vi chiedo scusa in anticipo.

posted @ martedì 14 marzo 2006 17:28 | Feedback (3) |

Build Giornaliera

Nell'azienda presso cui sto svolgendo un'attività di consulenza abbiamo realizzato un Data Layer utilizzato da tutti i software sviluppati internamente. Finalmente siamo riusciti a creare una build giornaliera automatica notturna del Data Layer, un ulteriore passo verso le pratiche dell'XP programming. Per la build utilizziamo Visual Build, un prodotto commerciale molto valido e facile da usare. Ora al Test di Joel il nostro team di sviluppo totalizza: 6

posted @ lunedì 13 marzo 2006 17:34 | Feedback (7) |

Chiudere tutti i nodi dei progetti nel Solution Explorer in Visual Studio.NET 2003

Lavoro su solution che hanno decine di progetti al loro interno e mi trovo spesso nel noiosissimo lavoro di chiudere i nodi di progetto uno per uno a mano. Purtroppo non esiste un comando già pronto in Visual Studio.NET 2003; per risolvere il problema ho trovato questa macro su code project:                               Sub CollapseAll() ' Get the the Solution Explorer tree Dim UIHSolutionExplorer As UIHierarchy UIHSolutionExplorer = DTE.Windows.Item( _ Constants.vsext_wk_SProjectWindow).Object() ' Check if there is any open solution If (UIHSolutionExplorer.UIHierarchyItems.Count = 0) Then Return End If ' Get the...

posted @ lunedì 13 marzo 2006 15:39 | Feedback (2) | Filed Under [ Tips ]

Un blog di successo

Mi riallaccio al post di Igor Damiani e segnalo questo interessante post di Jeff Atwood. La sua conclusione è un pò cruda, ma mi trovo sostanzialmente d'accordo con lui: Users just aren't that into you. It's not personal. It's business. Unless what you're writing .. solves their problem provides useful information entertains them makes them feel like they rule .. it's irrational to expect users to care about it. Questo non vuol dire che si devono per forza seguire le sue indicazioni, però se interessa che il proprio numero di visite cresca non se ne può non tenere conto.

posted @ sabato 11 marzo 2006 09:59 | Feedback (1) |

Software difettosi? No, complicati

Prendo spunto dall'articolo su Punto Informatico Gadget difettosi? No, complicati per una riflessione sui software prodotti da noi informatici. Realizzare un User Interface intuitiva e usabile è estremamente difficile e dispendioso, bastano delle piccole dimenticanze affinchè l'utente percepisca l'applicazione come non funzionante ovvero inaffidabile. Anche la letteratura a riguardo latita, è spesso troppo generica, troppo banale, per cui le linee guida che ne scaturiscono sono poco applicabili nella nostra realtà. Con l'esperienza ho migliorato notevolmente la qualità delle GUI, ma ancora non ho quella dimestichezza e sicurezza che ho con il codice. Sulla scrittura del codice poi ci sono bellisimi tesi come Code Complete, mentre non...

posted @ mercoledì 8 marzo 2006 18:51 | Feedback (2) |

Nuova versione delle SyncFusion

E' uscita la versione 4.1.0.50 della libreria di controlli SyncFusion sia Windows Forms che Web Forms. Tra le novità il supporto del docking alla Visual Studio 2005. E' una libreria commerciale che utilizzo da circa un anno, non sono perfette e soffrono di alcuni fastidiosi bugs, ma sono molto complete ed hanno un buon rapporto qualità prezzo. La consiglio a chi deve realizzare software con una GUI accattivante e dotata di tutti quegli effetti grafici a cui la Microsoft ci ha abituati con Windows XP e Office 2003.  

posted @ mercoledì 8 marzo 2006 11:08 | Feedback (0) |

Creare un Addin di Reflector

Avevo l'intenzione di creare un Addin di Reflector per la visualizzazione di alcune semplici metriche su assembly .NET. Ho cercato un pò con google ed alla fine ho trovato questo esempio su gotdotnet: http://www.gotdotnet.com/workspaces/workspace.aspx?id=0f5846c3-c7aa-4879-8043-e0f4fc233ade Estratto il tutto in una cartella ho visto che il codice sorgente referenzia l'eseguibile di Reflector, purtroppo dal Visual Studio.NET 2003 non è supportato il reference ad un eseguibile Sarei costretto a compilare il tutto con file batch, ma non ne ho proprio voglia. Esisterà qualche workaround?  

posted @ martedì 7 marzo 2006 13:52 | Feedback (2) |

[OT] La sigla dei Simpson con attori veri

Clicca il titolo per leggere

posted @ lunedì 6 marzo 2006 20:17 | Feedback (1) |

Coding Horror

Uno dei miei blog preferiti è Coding Horror, ad ogni post ci sono riflessioni interessanti. Cito da quello di oggi I've often thought that sucking less every year is how humble programmers improve. You should be unhappy with code you wrote a year ago. If you aren't, that means either A) you haven't learned anything in a year, B) your code can't be improved, or C) you never revisit old code. All of these are the kiss of death for software developers. Come dargli torto? Proprio oggi stavo riguardando del vecchio codice C# scritto quattro anni fa...  

posted @ lunedì 6 marzo 2006 15:57 | Feedback (1) |

UGIdotNETWiki e il Pattern Mediator

Questa mattina durante una sessione di pair con luKa per lo sviluppo di un'applicazione che utilizza le Windows Forms è emersa la necessità di utilizzo del pattern Mediator. Sono così venuto a conoscenza del mastodontico lavoro fatto dai collaboratori del wiki di UGIdotNET. Complimenti per la completezza e la navigabilità dei contenuti! Vorrei proporre un'ulteriore miglioramento, estendendo la parte degli esempi d'uso in .NET. Nel caso specifico viene citata l'interazione dei controlli delle Windows Forms o delle Web Forms; mi sarebbe piaciuto un esempio più semplice e meno generico più simile a quelli dei GOF. Sono l'unico che sente questa esigenza o qualcun'altro ha questa necessità?

posted @ lunedì 6 marzo 2006 14:08 | Feedback (0) |

Powered by:
Powered By Subtext Powered By ASP.NET