lundi 6 octobre 2008

Problème avec Visual Studio

Ca m'arrive régulièrement : A force d'installer des bêtas, des CTP, des versions express... à un moment donné ça craque. Ce week-end encore, j'installais Visual Studio 2008 (j'ai déjà Visual C# Express d'installé sur ma machine et Visual Web Developer). Bref je lance Visual Studio, je crée une application WPF et là c'est le drame : je n'ai pas d'éditeur Xaml ! Ni de Designer WPF (un Normand ne peut pas concevoir de travailler sans Cider :D). Bref, un poil fatigué, je désinstalle la totale : les versions express, le .NET Framework, Visual Studio 2008... je redémarre et je réinstalle Visual Studio 2008. L'installation se passe sans problème. Je teste une application WPF : Idem !

En fait il suffisait de taper la commande : Devenv /ResetSkipPkgs dans le shell Visual Studio (qui se trouve dans le répertoire "Visual Studio Tools" dans le menu Démarrer -> Programmes...)

Et tout refonctionne à merveille !

mercredi 24 septembre 2008

Un visiteur, venu d'ailleurs !

Voici une réflexion que m'a partagé un développeur sénior et accessoirement chef de projets... je vous la partage :

"Avant d'implémenter un pattern (Visitor en l'occurence), il faut se poser la question suivante et faire un choix :

  • Soit on ne l'implémente pas et on prend un débutant pour le maintenir (pas cher).
  • Soit on l'implémente et on se paye un expert (plus cher)."

L'idée sous-jacente est le fait qu'implémenter le design pattern visitor a un coût de maintenance plus élevé que de ne pas l'implémenter. L'autre idée est qu'un design pattern, c'est manifestement trop complexe (compliqué ?) pour le comprendre et le maintenir pour un développeur junior.

Le fait est que les design pattern sont encore assez méconnus. Autour de moi les gens ont entendu le terme "design pattern" mais ont encore du mal à y poser l'idée qu'il y a derrière. Personnellement je ne connais pas les design pattern (à part singleton ;-) mais en revanche je connais leurs intérêts !

Le principal intérêt est que le design pattern est une solution éprouvée aux problème rencontré. C'est à dire qu'il est utilisé par des milliers de développeurs dans le monde et que si tant de monde, les utilisent, c'est sûrement que c'est optimisé et robuste.

En plus de cela, les design pattern sont universels et documentés ! Il suffit de taper "Visitor Design Pattern" dans Live Search pour s'apercevoir qu'il y a tout une littérature qui existe dessus.

Donc si on ne connait pas un design pattern, il est en revanche TRES SIMPLE de retrouver sa documentation sur le web, et de le comprendre. Un double intérêt pour le développeur junior, qui à son tour pourra l'implémenter quand il rencontrera ce type de problème !

Je ne sollicite pas beaucoup mes nombreux lecteurs mais j'aimerai bien avoir leur avis là dessus.

jeudi 11 septembre 2008

Techdays 2009 - Préinscriptions

Je crois que tout est dans le titre, il ne manquait plus que l'URL. Là voici. Pour information, l'événement se déroulera le 10, 11 et 12 février 2009 au Palais des Congrès de Paris.

Non je NHiberne pas !

Sous ce subtil jeu de mots, voici un blog que j'ai découvert en surfant : The NHibernate FAQ. C'est véritablement une mine d'informations sur le sujet. Ce blog traite d'autres sujets comme le TDD et le DDD par exemple. Cette liste n'est évidemment pas exhaustive, je vous laisse le soin d'y jeter un oeil. Hop, rajouté dans les liens sympas.

mardi 2 septembre 2008

Raccourcis clavier

On en parle souvent, ils sont tellement pratiques allez, l'url qui va bien : http://www.microsoft.com/enable/products/KeyboardSearch_xp.aspx (pour XP)

Pour la petite histoire je cherchais le raccourci permettant de réduire/développer les dossiers dans une arborescence de projets sous VS. En effet quand on a une arborescence qui ressemble à la forêt amazonienne, on est bien content de l'élaguer à coup de flèche gauche :)

Allez je ne suis pas ingrat : http://windowshelp.microsoft.com/windows/en-us/help/2503b91d-d780-4c80-8f08-2f48878dc5661033.mspx (pour Vista)

vendredi 8 août 2008

Parcourir les éléments d’une winform

Petit tip qui pourra me resservir et peut-être pour vous aussi...
L'objet de ce billet consiste à montrer comment parcourir simplement tous les éléments d'une winform en .Net.

Parcourir tous les contrôles d’une winform
Pour récupérer tous les contrôles d’une winform, rien d’exceptionnel. Voici ce que j'ai fait :



Ce qui n’est pas bien compliqué, mais bien pratique à utiliser :


Et voilà, j'ai énuméré tous les contrôles de ma Winform. Enfin presque. Les nouveaux contrôles du framework 2.0 (ToolStripItems) n'héritent pas de Control.

Parcourir tous les ToolStripItems d’une winform

Rappel : Les ToolStripItems sont les éléments contenus dans les menuStrip, statusStrip, toolStrip et toolStripContainer :

Voici la hiérarchie de classe des ToolStripItems :


L’idée ici est de parcourir les contrôles de la winform (comme quoi ce qu’on a fait au dessus va nous servir) et de regarder ceux qui sont de type ToolStrip (la classe ToolStrip hérite de Control, elle)


Toujours aussi simple d’utilisation :


Maintenant qu’on a tous les ToolStrip de la winform, et bien on va les parcourir et aller chercher les ToolStripItems de tous les ToolStrips. Auparavant, on va écrire un énumérable qui va parcourir les ToolStripItems du ToolStrip et vérifier s’ils contient d’autres ToolStripItems :



On va utiliser cette énumération comme ceci :



Qui retourne tous les toolstripitems du toolstrip passé en paramètre.

Triomphe !

L'année dernière, j'envisageais de passer mon permis moto. Pour diverses raisons (financières entre autres) j'ai repoussé l'échéance à "je ne sais pas quand mais pas pour tout de suite". Bref, n'y connaissant rien, j'avais acheté une revue et il y en a une qui m'avait botté d'emblée. Oui la Triumph Street Triple. Juste par son look, elle m'avait séduite. Le test de la moto dans la revue était très concluant. (elle a d'ailleurs gagné le prix de la moto de l'année 2008).

Ge-Off, lui, a passé le cap et passe actuellement son permis moto. Et il nous signale ici qu'il y a une déclinaison de la Street Triple plus "sport" : La Street Triple R (sortie courant 2009). Apparemment elle a la même puissance qu'une Street mais on peut régler beaucoup plus de choses (je vous passe les détails). Il nous annonce clairement que c'est ce qu'il va surement s'offrir :) Je sens qu'il y en a plus d'un qui va le jalouser, à commencer par moi. Rrrrrrrr

jeudi 3 juillet 2008

Please Help

En informatique en général, quand je galère sur un problème, j'hésite toujours de demander de l'aide à un collègue que je ne connais pas ou peu, même s'il est expert (c'est fou le nombre de personnes qui s'auto-proclament expert en informatique).
Pourquoi j'hésite me demandez-vous ? Parce qu'il y a toujours une tendance chez les personnes qui veulent vous filer un coup de main, à vouloir se montrer supérieur à vous. Celà en soi, ça ne me gêne pas plus que ça, après tout c'est humain de vouloir se faire mousser un peu. Mais quand ce dit expert, n'arrive pas à résoudre votre problème alors là... c'est carrément le drame. Il prend le contrôle de votre machine et essaye à peu près tout et n'importe quoi (surtout n'importe quoi).

Résumé :
- Je perds du temps et galère sur un problème.
- Je me résouds finalement à demander de l'aide à mon collègue expert (en me disant que c'est franchement puérile comme réaction de ne pas demander de l'aide)
- Le collègue ne s'en sort pas mieux que moi
- Le collègue monopolise ma machine.

Bilan :
- Je ne suis plus tout seul à perdre du temps mais on est 2.

Epilogue :
Il se trouve que nous n'avons pas trouvé la solution au problème. J'ai attendu le lendemain, redemandé à quelqu'un d'autre... pareil mais là je l'ai stoppé vite fait quand il a voulu prendre le contrôle de ma machine (c'est marrant le fait qu'on ne puisse rien faire quand on n'a pas la souris en main !)

J'ai finalement demandé à quelqu'un dont je connais et reconnais ses compétences dans de multiples domaines en informatique. via Messenger, il a tout de suite diagnostiqué le problème et m'a dit comment le résoudre et au pire le contourner. En 5 minutes c'était corrigé.

C'est pourquoi je ne demanderai plus d'aides à des gens dont j'ignore leur(s) réelle(s) compétence(s) car 9 fois sur 10, on va droit dans le mur !

J'ai quelques amis qui ont d'incroyables compétences. Eux, ils le savent qu'ils sont compétents et n'ont pas besoin d'étaler leur science. Ces gens là, ils t'aident uniquement pour t'aider. Et en plus, ils le font bien ! J'adore cet état d'esprit. Ce qui est con c'est que je peux rarement leur rendre la pareille (en informatique du moins).

mercredi 2 juillet 2008

Restaurer une base de données SQL Server 2000 sur un serveur SQL 2005

Tout est dans le titre. Si vous essayez de restaurer une base de données provenant d'un serveur SQL Server 2000, sur un serveur SQL Server 2005 et que vous obtenez un message d'erreur genre :







C'est parce que votre fichier ne contient pas dans la liste des utilisateurs un utilisateur SQL Server au poétique nom de : SQLServer2005MSSQLUser$...$SQL2K5.

Pas de panique, déplacez simplement votre fichier de backup dans le répertoire de backup d'SQL Server (quelque chose comme : C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Backup). Comme vous êtes prudent, vérifiez les utilisateurs dans l'onglet sécurité du fichier (clic droit -> propriété) et normalement, joie, bonheur un utilisateur mystère (heu non Sql Server) a été ajouté. Reéssayez et le tour est joué.

Ce n'est pas moi qu'il faut remercier, c'est Murphy# (qui refait vivre son blog).

vendredi 13 juin 2008

Amazon et le e-commerce font 2.0

Ce titre provocateur est absolument faux ! Il n'a pour but que de catalyser vilement votre attention. Toujours est-il que l'autre jour je m'intéressais au Zune (on se demande à qui la faute :)). Je regarde le produit sur Amazon et quelques clics plus tard je tombe là dessus :



"you save $0.01". Ils me prennent pour un con ?! Plus sérieusement, bien qu'il ne faille pas dramatiser, je trouve ça un peu moyen. Comme c'est Amazon on passera l'éponge, mais il nous habitue tellement à des concepts e-commerce de haute voltige d'habitude que forcément quand il y a une coquille ça surprend.

PS : et je ne tiens pas compte de la parité Dollar / Euro ;-)

jeudi 29 mai 2008

Soirée Geekchic #3

Bonsoir,

Pour celles et ceux qui voudraient me faire un petit coucou, je serai présent à la soirée Geekchic #3 qui se tient aux planches à Paris le 03 juin prochain. A mardi, donc :)



Opus #3


Recommandé par des Influenceurs



PS : C'est marrant comme c'est perturbant le fait qu'il n'y ait pas de curseur qui clignote pour écrire son message dans l'interface "blogger"

vendredi 23 mai 2008

Que la lumière (argentée) soit !

Petit ticket juste pour vous dire que je serai à la session technique sur Silverlight 2. Espérons que ça dépote ;-) Vous pouvez aussi vous inscrire ici ET .

Votre serviteur argenté.

jeudi 22 mai 2008

Mais... Y'a pas de Mai ! (Bah si justement)

Et toujours pas de post en Mai ? Et alors je fais ce qu'il me plaît (c'est bien envoyé ça !) C'est donc sur un ton léger que j'aborde ce billet.

Voici un choix cornélien (mais on sait les gérer, on est à Rouen ;-)) chez Ge-Off qui hésite pour sa première moto... En effet, Môssieur passe le permis moto et nous propose 4 montures :

1/ Street Triple...
2/ Monstro Ducati
3/ Yamaha
4/ Triumph Thruxton

Choix que je ne justifierai pas car nous sommes au mois de mai donc...

L'autre nouvelle c'est que Ge-Off est un développeur .NET confirmé qui semble-t-il souhaite nous faire partager, en plus de ses fantasmes à 2 roues, ses connaissances et retours d'expérience sur .NET. Donc je vais regarder de près son blog qu'il vient de déterrer depuis peu et vous tenir informer de ses billets.

Stay tuned comme on dit dans le jargon...

mardi 29 avril 2008

Sql Server 2005 Express Edition - Problème d'import de Backup

Ce matin, j'ai eu un petit souci en important un backup d'une db sur mon poste en local. J'ai installé Sql Server 2005 Express Edition, Management Studio Express (Oui en ce moment je suis express, que voulez-vous). Tout ce passe bien sauf lorsque je veux réaliser l'import où un message d'erreur s'affiche :




Et la version lisible :

TITLE: Microsoft SQL Server Management Studio Express
------------------------------

An exception occurred while executing a Transact-SQL statement or batch. (Microsoft.SqlServer.Express.ConnectionInfo)

------------------------------
ADDITIONAL INFORMATION:

Cannot open backup device . Operating system error 5(Accès refusé.). RESTORE HEADERONLY is terminating abnormally. (Microsoft SQL Server, Error: 3201)

For help, click: http://go.microsoft.com/fwlink?ProdName=Microsoft+SQL+Server&ProdVer=09.00.3042&EvtSrc=MSSQLServer&EvtID=3201&LinkId=20476


La solution (je parle bien de la version EXPRESS de SQL Server 2005), c'est d'ajouter les droits à votre fichier de backup au compte Network Service (SERVICE RESEAU) et le tour est joué.

mercredi 23 avril 2008

Microsoft vend la Mesh

2 posts le même jour ? C'est pour me faire pardonner ? Quelque part, oui. Juste une petite news pour vosu dire que Microsoft, un éditeur de logiciels se situant (bon ok j'arrête) vient de sortir The Platform : MESH. Là encore, c'est eux qui en parlent le mieux donc 2 petits liens :

http://www.nikhilk.net/Entry.aspx?id=193
http://blogs.developpeur.org/redo/archive/2008/04/23/microsoft-live-mesh-here-there-everywhere-l-ubiquit-en-marche.aspx

Moi je dis, tout ça commence à vraiment prendre forme

Dépoussiérage de blog !

Je suis impardonnable ! J'ai abandonné mon blog (et mes fans) pendant 3 mois. Alors pour me rattraper je vais... je vais... bah je vais pas faire grand chose. Allez si, je vais quand même essayer de justifier ces 3 mois de néant. Changement de job. Je suis désormais Développeur .NET Junior (pour l'instant ;-). En parallèle je révise pour passer ma certif .NET 2.0, et je suis l'actualité richissime de la plateforme .NET. Je joue de plus en plus avec Linq et Linq To SQL. C'est vraiment puissant, il n'y a pas à dire ! Je joue également avec WPF et Silverlight 2. WPF, c'est surtout pour me familiariser avec le binding (on a beau dire ce qu'on veut, autant c'est puissant et souple, autant ce n'est pas intuitif). Silverlight 2 (beta 1), c'est surtout parce que à roxx :-)

"Tu joues, tu joues et nous rien !" me dites-vous. Je vous avais promis en effet des petits tutoriaux et articles sympathiques et je n'ai toujours rien écrit. Ne vous inquiétez pas, j'y pense mais en attendant d'écrire un truc un tantinet sérieux, je préfère me contenter de relayer l'info.

A propos, la séquence .resx de ce ticket sera un site proposant des podcasts sur les technos (principalement .NET) mais aussi sur d'autres sujets aussi vaste que peut en contenir le développement logiciel : Visual Studio Talkshow

Et promis, j'essaie de faire un effort côte mise à jour...

mercredi 23 janvier 2008

"Mes Techdays" publiés

Voici mon calendrier pour cette année aux Techdays.

Les incertitudes sont :
  • [Recherche] Beyond search ( Analyse d'audio et de musique: état de l'art) et
  • Rosario : le futur de Visual Studio Team System

Maintenant vous savez tout !

Quelques liens sur WPF

Je m'intéresse en ce moment à WPF. Faute de pouvoir vous montrer des hacks intéressants ou des tutoriaux dignes de ce nom je vais me cantonner à vous laisser quelques liens sur le sujet :

Une série de webcasts : WPF Avancé animé par Mitsu Furuta et Thomas Lebrun :

Une autre série de webcasts : de Winform à WPF animé par Mitsu Furuta

Comme dirait une célèbre marque de soda, enjoy !

mercredi 2 janvier 2008

Meilleurs voeux pour 2008

Je vous présente mes meilleurs voeux pour cette année 2008. C'est de rigueur. En ce qui concerne ce blog, il va légèrement évoluer (en tout cas c'est ce que je souhaite). Il va se tourner vers un "profil" plus technique avec quelques tips sur .NET Je vous en dirai plus d'ici quelques mois. En attendant, il sera le relai d'articles intéressants sur les techno .NET (et autres). Une de mes résolutions (et ambition) c'est de rendre ce blog intéressant (on n'y est pas mais je vais m'y employer d'ici quelques mois) et aussi de le mettre à jour plus souvent et régulièrement :-)