Bienvenue à Blogs CodeS-SourceS Identification | Inscription | Aide

Matthieu DUFOURNEAUD-RAVEL

Functional programming addict

Actualités

Back to basics - How to parse a date from a string when you know its format

To convert a String to a DateTime, most of us use the Parse method (or its exception-free version TryParse).

Although this method does the job we want, it has some drawbacks:

 

Fortunately, we mostly know the format of the date we have to parse, and for this case we have a better solution for parsing the date, the ParseExact method (or its exception-free version TryParseExact):

image

As you can see, Parse doesn't always give the DateTime we expect, with ParseExact we have the full control.

image

ParseExact is also faster than Parse (almost 1/3 faster).

 

Happy coding Sourire

Back to basics - How to create a new GUID

As you may already know, a struct can’t declare a parameterless constructor (cf. http://msdn.microsoft.com/en-us/library/aa691142%28v=vs.71%29.aspx and http://msdn.microsoft.com/en-us/library/aa664479%28v=vs.71%29.aspx).

 

That’s why when you want to create a new Guid, you should not use the constructor:

image

Indeed, if you use the constructor, you always ended up with a blank Guid, and that's usually not what you want.

 

In order to create real new Guid, you should use the Guid.NewGuid factory method:

image

 

Happy coding Sourire

Soirée SharePoint 2010 au MUG Lyon - jeudi 16 décembre 19h

Vous êtes tous invité à la nouvelle soirée du MUG Lyon (Microsoft User Group) dédiée à SharePoint 2010.

La conférence sera animée par Nicolas TRUCHOT (Exakis) et Guillaume MOULIN (Sogeti).

Plus d'infos sur le site de l'association: www.mug-lyon.fr

MUG Lyon - Réunion Aspectize (orienté objet + AaaS) - jeudi 25 novembre 19h

Un rappel pour vous inviter à la réunion mensuelle du MUG Lyon qui aura pour thème l'orienté objet et l'AaaS (Architecture as a Service), et sera animée par Frédéric FADEL, CTO et co-fondateur d'Aspectize.

Pour plus de détails sur cette réunion, merci de consulter le site de l'association: www.mug-lyon.fr

MUG Lyon - Mono - jeudi 28 octobre 19h

Ce mois-ci le MUG Lyon est heureux de mettre à l'honneur la plateforme qui nous permet d'exploiter nos compétences .NET sur Linux, sur Mac, sur iPhone/iPad, sur Android, ... bref qui fait de .NET un framework ouvert, cette plateforme vous l'avez certainement reconnue, c'est Mono.

Pour animer cette conférence nous aurons la chance d'accueillir Jean-Baptiste EVAIN, membre de l'équipe Mono chez Novell.

Pour plus de détails sur cette réunion, merci de consulter le site de l'association: www.mug-lyon.fr

MUG Lyon - Windows Phone 7 - jeudi 30 septembre 19h

La rentrée du MUG Lyon aura lieu le jeudi 30 septembre dans les locaux de l'EPITECH (cf. plan ci-dessous) avec pour thème Windows Phone 7.

La réunion débutera à 19h, et la conférence à 19h30.

La conférence sera animée par Jean-Michel GUEMGUEM de tekigo et Nicolas HUMANN d'Exakis, et s'articulera de la manière suivante:

  1. Quoi de neuf pour les Smartphones chez Microsoft
    1. L’OS Windows Phone 7
    2. L’essentiel est dans Metro
    3. Un hardware strict
  2. Développer pour Windows Phone 7
    1. Compact Framework .Net à la sauce WP7
    2. Silverlight 3.0
    3. XNA 4.0
  3. Installation et diffusion
    1. Windows Marketplace
    2. Zune software
  4. Questions/Réponses autour d’un device

 

Cette réunion sera suivie d'un buffet, afin de se rencontrer et d'échanger.

 

Pour conclure, venez nombreux, faites passer l'invitation, et n'oubliez pas que "le MUG Lyon c'est chez toi, chez moi, chez nous quoi !!!" (que ceux qui ont reconnu me laissent un commentaire, je me sentirais moins seul avec ma culture de trentenaire Wink).

 

Plan EPITECH Lyon:

86 boulevard Marius VIVIER-MERLE 69003 Lyon


Agrandir le plan
MUG Lyon - Planning réunions 2010

Après la 1ère réunion sur Azure, le MUG Lyon vous propose les réunions suivantes:

Chacune des réunions sera suivie d'un buffet afin de permettre aux participants d'échanger avec le(s) speaker(s) et entre eux (c'est la partie "networking" des réunions).

Vous êtes donc tous invités à assister à ces réunions, n'hésitez pas transmettre cette invitation, et si vous souhaitez contribuer de manière active au MUG Lyon, contactez-moi, l'association est ouverte à toutes les bonnes volontés.

Les Monades pour les Nuls

Avec l'annonce de F#, je me suis intéressé de plus en plus à la programmation fonctionnelle, je suis donc rapidement tombé sur les "monades", mais malgré la lecture de plusieurs articles, j'étais resté imperméable à leur concept.

C'est désormais fini, grâce à deux articles de Bertrand LE ROY: "How I understood monads" part 1 et 2, j'ai enfin pu accéder au charme des monades.

A votre tour...

Second billet avec "Windows Live Writer"

Voici un peu plus de 2 ans que j'ai ouvert ce blog, et au final moins de 10 billets au compteur, on ne peut pas dire que j'ai été très prolifique.

Pourtant au quotidien j'abreuve mes collègues de mails diffusant les "découvertes" que j'aurais fait au détour d'un article ou d'un bout de code, mais à travers l'éditeur Web de mon blog, je ne retrouvais pas cette fluidité du mail, mais ça c'était avant...

En effet en cherchant comment afficher un bout de code sur mon blog je suis tombé sur cet article de Scott HANSELMAN (Best Code Syntax Highlighter for Snippets in your Blog) dans lequel Scott faisait référence à Windows Live Writer, outil gratuit faisant parti des outils Windows Live (dont bien entendu Windows Live Messenger) et permettant l'édition de blog (il supporte de nombreux fournisseurs fournisseurs de blogs).

En utilisant ce "Word" pour blog, j'ai enfin trouvé un outil simple et pratique pour rédiger mes billets, je vous le conseille.

P.S.: Voici comment s'affiche ce billet dans Windows Live Writer:

ce billet dans Windows Live Writer

Premiers pas avec F# - Hello F# World :-)

Billet mis à jour le 28 septembre 2010.

Beaucoup de langages permettent de développer en .NET, on peut cependant les divisés en 2 catégories, ceux livrés avec Visual Studio, et les autres. Avec l'arrivée de Visual Studio 2010, un nouveau langage vient d'intégrer le club fermé des langages livrés avec Visual Studio, c'est F#.

F# est un langage issu du laboratoire Microsoft Research. C'est un langage hybride combinant les paradigmes de programmation fonctionnelle et orienté objet. Et surtout, c'est un langage .NET à part entière, il tire donc pleinement partie de toute la bibliothèque .NET, et se compile (comme  le C# ou le VB.NET) en MSIL.

Ce billet ce veut le premier d'une série ayant pour but de vous faire découvrir (et aimer j'espère) F#, et donc comme tout premier pas avec un langage, voici un "Hello F# World :-)" qui va néanmoins vous permettre d'expérimenter l'utilisation de la bibliothèque .NET en F#:

Pour débuter vous devez disposer d'F#, pour cela plusieurs solutions:

  • Visual Studio 2010:
    • Vous disposez d'une version Professional ou supérieur, dans ce cas, vérifier si F# est installé, dans le cas contraire complété votre installation,
    • Vous ne disposez pas d'une version Professional ou supérieur, actuellement il n'existe pas de version Express de F#, mais Microsoft envisage de fournir fournit F# en tant qu'add-in compatible avec Visual Studio 2010 Shell Integrated.
  • Visual Studio 2008:
    • Vous pouvez installer F# via un add-in compatible avec toutes les versions de Visual Studio 2008 à l'exception des versions Express (mais il peut être installé sur un Visual Studio 2008 Shell Integrated).
  • SharpDevelop: F# est un des langages supportés par SharpDevelop (merci à Graveen de me l'avoir indiqué Wink).
  • MonoDevelop: Wildart propose un add-in F# pour MonoDevelop.

Ensuite nous allons utiliser "F# Interactive" qui est une REPL, permettant de développer de manière rapide et interactive (le code ainsi développer devra ensuite être déplacer dans un fichier pour être réutilisé), elle est disponible dans Visual Studio, mais aussi en ligne de commande.

Voici notre "Hello F# World :-)":

F# Interactive

La première ligne permet d'ouvrir le namespace "System" (c'est l'équivalent d'un "using" en C#).

La seconde ligne est un appel à la méthode "WriteLine" de "System.Console".

Enfin, les ";;" déclenche l'évaluation.

 

A bientôt pour la suite...

MUG Lyon - 1ère réunion jeudi 17 juin 19h - Azure (cloud computing) - MERCI :-)

Merci à toutes les personnes présentes lors de notre 1ère réunion, qui grâce à vous a été une réussite, MERCI Big Smile

Rendez-vous le dernier jeudi de septembre (30 septembre) pour une réunion sur la programmation parallèle, même lieu (EPITECH de Lyon), même heure (19h)...

MUG Lyon - 1ère réunion jeudi 17 juin 19h - Azure (cloud computing)

Vous êtes tous invités à la 1ère réunion du MUG Lyon (Microsoft User Group) qui aura lieu le jeudi 17 juin à 19h dans les locaux de l'EPITECH, le thème étant la solution de cloud computing de Microsoft "Azure" (plus d'infos sur le site de l'association http://www.mug-lyon.fr/).

Les réunions suivantes auront lieu tous les derniers jeudi du mois à partir de septembre (sauf en juillet et en août), et aborderont la programmation parallèle/concurrentielle en septembre (que j'animerai), et le développement d'application pour Windows Phone en octobre.

Pour les réunions suivantes les sujets sont à définir, n'hésitez donc pas à soumettre vos idées et pourquoi pas à animer une réunion...

Enfin, si vous connaissez des personnes susceptibles d'être intéressées par ces réunions, faites leur passer ce message: "The MUG Lyon needs you" Wink

A+ Smile

P.S.: Chaque réunion sera suivie d'un apéro Wink

Y-a-t'il besoin de réunions .NET/Mono sur Lyon ?

Il y a un peu moins d'1 an j'annonçais le lancement d'ALT.NET Lyon; plusieurs mois plus tard, aucune réunion n'a eu lieu et on peut dire que le projet est mort-né.

Je reste néanmoins persuadé qu'il devrait exister à Lyon des réunions techniques sur .NET/Mono (à l'instar d'un JUG Lyon pour Java), mais après l'échec de ma première tentative je préfère être prudent et c'est pour cela que je vous sollicite à travers ce blog, je vous invite donc à donner votre avis via un commentaire (je viens de me rendre compte que les commentaires anonymes étaient désormais désactivés, je vous propose de me laisser des messages que je relaierai en commentaires)...

Enfin, pour lancer le débat voici quelques idées sur la forme que pourraient prendre ces réunions .NET/Mono:

  • 1 réunion tous les 3 ou 4 mois,
  • réunion d'1 heure composée de mini-présentations (je rêve d'une TED à Lyon Wink),
  • hébergement par une école ou une faculté.

Et d'autres sur le fond:

Lancement ALT.NET Lyon

La cellule ALT.NET lyonnaise est désormais ouverte, pour apporter votre contribution rejoignez le groupe lyon.alt.net.

ALT.NET est une communauté de développeur(se)s souhaitant exploiter .NET en ne se limitant pas au cadre défini par Microsoft.

Le but de ce groupe est de permettre la rencontre et l'échange des développeur(se)s .NET lyonnais(es).

SCRUM et CMMi sont dans un bateau...

Méthodes agiles et CMMi semblent souvent de prime abord 2 mondes opposés, le premier évoquant la souplesse et le second la rigidité, ce sentiment est dû au fait que l'on confonde CMMi avec les méthodes rigides souvent mise en place.

En effet, le fondement de CMMi est de préconiser la mise en place de méthodes, sans pour autant indiquer lesquelles.

Il est donc tout à fait possible de s'inscrire dans une démarche de qualité CMMi en mettant en place des méthodes agiles, voici 2 articles exposant plus en détails cette mise en oeuvre:

- SCRUM meets CMMi de Pablo SANTOS, publié dans le Dr Dobb's Journal,

- SCRUM supports CMMi level 5 de Jeff SUTHERLAND.

EBook - Foundations of Programming

Voici un lien vers un excellent EBook de Karl SEGUIN (un contributeur régulier du site CodeBetter.com): Foundations of Programming

Cet EBook gratuit, est une compilation de différents posts de l'auteur, il couvre un large spectre allant du "Domain Driven Design" à la gestion des exceptions.

Hello World :-)

Salut à tous,

J'ai enfin franchit le pas du 1er message, j'en profite pour remercier Nix qui m'a créer ce blog il y a quelques mois déjà.

Comme il est de coutume je me présente brièvement; je suis donc Matthieu DUFOURNEAUD-RAVEL, j'ai 30 ans depuis quelques semaines (cap assez dur à franchir Wink), et je suis un passionné de technologie (pour ceux qui sont comme moi, un site de référence: Technology Review).

En ce qui concerne le développement, mes sujets de prédilection sont .NET, les langages (principalement ceux .NET compliant), l'algorithmie, et la qualité.

Enfin, sur un plan professionnel vous pouvez consulter mon profile Viadeo.

A+ Smile

Matthieu



Les 10 derniers blogs postés

- Office 365: Script PowerShell pour assigner des droits Full Control à un groupe défini par Blog Technique de Romelard Fabrice le 04-30-2017, 09:22

- SharePoint 20XX: Script PowerShell pour exporter en CSV toutes les listes d’une ferme pour auditer le contenu avant migration par Blog Technique de Romelard Fabrice le 03-28-2017, 17:53

- Les pièges de l’installation de Visual Studio 2017 par Blog de Jérémy Jeanson le 03-24-2017, 13:05

- UWP or not UWP sur Visual Studio 2015 ? par Blog de Jérémy Jeanson le 03-08-2017, 19:12

- Désinstallation de .net Core RC1 Update 1 ou SDK de Core 1 Preview 2 par Blog de Jérémy Jeanson le 03-07-2017, 19:29

- Office 365: Ajouter un utilisateur ou groupe dans la liste des Site collection Administrator d’un site SharePoint Online via PowerShell et CSOM par Blog Technique de Romelard Fabrice le 02-24-2017, 18:52

- Office 365: Comment créer une document library qui utilise les ContentTypeHub avec PowerShell et CSOM par Blog Technique de Romelard Fabrice le 02-22-2017, 17:06

- [TFS] Supprimer en masse les dépendances à SQL Enterprise ou Developer avant de procéder à une migration par Blog de Jérémy Jeanson le 02-20-2017, 20:30

- Office 365: Attention au volume utilisé par les fichiers de Thèmes de SharePoint Online par Blog Technique de Romelard Fabrice le 02-07-2017, 18:19

- [SCVMM] Supprimer une machine bloquée par Blog de Jérémy Jeanson le 01-31-2017, 21:22