18.11.08

eeeekPhone

posted by Julien Brunet

A ce jour Apple interdit toujours quiconque de fabriquer une virtual machine pour iPhone.
Et l'iPhone, ça se programme semble-t-il comme ça:

- (void)parser: (NSXMLParser *)parser
   didEndElement: (NSString *)elementName
   namespaceURI: (NSString *)namespaceURI
   qualifiedName: (NSString *)qName
  {
    if([elementName isEqualToString:@"RDF"]==YES && expenseobj==NO)
    {
      [self.expensedict setObject:self.expenseController.date forKey:@"date"];
      [self.expensedict setObject:self.expenseController.payee forKey:@"payee"];

Dans ces moments-là, on bénie C# et Java d'avoir fait le ménage. Objectivement...

UML2 - Modéliser une application Web est disponible en numérique

posted by Pascal Roques

La dernière édition de mon livre : UML 2 Modéliser une application web est disponible en numérique !

Qu'est-ce que ça veut dire ? Cela signifie qu'il est disponible en téléchargement au format PDF sur la plateforme dédiée izibook d'Eyrolles.

La différence ? 19,90 € au lieu de 25 €.
Une diffusion probablement plus large également ...:roll:

14.11.08

Ma semaine au TechEd

posted by amethyste

J'ai donc passé la semaine au TechEd de Barcelone.

Même si j'ai réservé mes comptes rendus au blog interne de ma boite, je vais en parler un petit peu ici.

Le message du jour

L'événement marquant fut clairement la plateforme Azure et le cloud computing.

Si vous êtes architecte allez voir dès maintenant. Il est possible que l'informatique de la prochaine décennie se joue là, en tout cas une chose est certaine Microsoft y croit très fort. La preuve ils sont en train de construire un datacenter géant qui va consommer à peu près le quart d'une tranche de centrale nucléaire à lui seul!

Des tonnes de ressources ici en attendant les vidéos du TechEd:

http://msdn.microsoft.com/fr-fr/msdn.pdc2008.azure.aspx

Et bien sûr:

http://www.microsoft.com/azure/default.mspx

Pas besoin d'Azure pour commencer à jouer avec le SDK.
Reste la question qui fâche: est-ce que les utilisateurs auront suffisamment confiance en Microsoft pour… Non, non, j'ai rien dit!

Moi aussi je fais le kéké

Apprendre des trucs qui n'intéressent personne ce n'est pas réservé à Sébastien Ros! Moi-même par exemple j'ai appris ceci au détour d'un lab:

Normalement on ne peut pas ajouter des attributs à des membres existants d'une classe partielle… Sauf avec le contournement suivant:

Prenons le cas d'une classe Product générée par le designer dbml par exemple.

On commence par créer une classe public dont le seul rôle sera de porter les métadonnées.
Appelons la MetadataProduct (mais AuegfOaiuzbcpiuYfpiaius fait aussi l'affaire, à vous de voir).

On décore Product de l'attribut:

[MetaDataType(typeof(MetadataProduct))]

Et c'est presque terminé. Si par exemple vous souhaitez ajouter des métas à la propriété Product.Nom, vous ajoutez dans MetadataProduct ceci:

public String Produit {get;set}

Et enfin vous ajoutez vos attributs et ça marche!

Oui je sais, tout le monde s'en fiche...

L'annonce du jour

Par contre, plus intéressant, depuis le 1er octobre dernier, DBPro (en fait il a encore changé de nom, cela doit faire bien 4 ou 5 en deux versions!) fait maintenant partie de Visual Studio Pro!!! Les abonnés MSDN peuvent même charger le patch pour VS 2008 dès maintenant. Je pense que je vais en profiter pour remettre à jour le tutoriel que j'avais fais lors de la sortie de la première version il y a deux ans déjà!

Un autre truc que je ne connaissais pas

Depuis le SP1 de VS 2008 on dispose d'un nouveau type de projet: Dynamic Data Web Site (version Linq for Sql et version Entities).

L'idée est de créer sans ligne de code un site complet qui fournit un accès CRUD vers toutes les tables déclarées dans un DBML. C'est quasiment magique.

Bon on peut aussi paramétrer et personnaliser un peu, mais c'est pour les sites très orientés données.
L'utilisation immédiate que je vois, c'est pour fournir une interface plus conviviale que Management Studio pour tester une appli et voir ce qui se passe dans les données. En tout cas je sais quel sera ma première tâche lundi!

A quoi ça sert?

Alors peut être vous demandez vous si c'est utile d'aller à une manifestation comme le TechEd.
A chacun de juger, mais personnellement j'ai passé une semaine à n'avoir rien d'autre à faire qu'assister à des conférences sur des tas de trucs que je connaissais, mais il y a toujours des choses à découvrir. Des tas de trucs que je ne connaissais pas aussi. Des tas de trucs mis de côté faute de temps d'aller y voir.

Une semaine!! Rendez vous compte!
Chose quasiment impossible à faire en temps ordinaire. En une semaine j'ai donc fait pratiquement 6 mois de veille technologique. C'est rentable à mon avis.
Et puis je suis revenu avec des tonnes d'idées intéressantes à mettre en œuvre ou à tester. J'ai remplis deux blocs notes complets d'informations diverses qui vont pas mal me servir tout au long de l'année.
Bref allez au TechEd si vous le pouvez.

Une fois la bas, inutile d'aller voir 50 conf sur le même sujet. Jouez plutôt la diversité. Et soyez en forme!

Evidemment c'est en anglais et certains conférenciers ne font pas beaucoup d'effort pour les auditeurs non anglophones qui essayent de prendre des notes en même temps…
Je dirai qu'il vous reste les blogs. Mais en informatique l'anglais, vous en aurez besoin à mon avis.

13.11.08

Nouveau départ !

posted by Pascal Roques

Eh oui, je quitte le groupe Valtech après 13 ans de bons et loyaux services !

Beaucoup de souvenirs : les débuts de l’agence de Toulouse en 1995, la parution de mon premier livre : UML en action en 2000, les catalogues de formation Valtech Training (je les ai tous gardés !), etc.

Et tellement de rencontres intéressantes…

Pour ne pas m’endormir, j’ai choisi de tenter une nouvelle aventure, en reprenant la formule qui a fait le succès des débuts de Valtech : « nos formateurs sont nos consultants ». Pour cela, je m'engage aux côtés d'Artal pour participer à la création d'une entité de conseil appelée A2 (Artal Advanced), dont vous entendrez parler rapidement.

Je vais donc refaire du conseil, sur la modélisation, mais aussi sur les méthodes agiles, participer à des conférences, écrire de nouveaux livres …

Stay tuned !

Pascal

10.11.08

What I found great at PDC – Day 2

posted by Sébastien Ros

The second day at PDC was almost a keynote day as the whole morning was focused on annoucements. Though, I managed to attend very interesting sessions.

TL14 Project "Velocity": A First Look

Before going to this session I knew what Velocity was for: distributed data caching. I also knew about difficulties to implement such a framework as I have already created one for Data Tier Modeler, our old ORM framework. Going to this session was a great pleasure as it answered a lot of my questions, especially about all the available features, and real scenarios applications. Definitely one of my next development topics.

BB43 Identity: "Geneva" Deep Dive

I didn't really what it would be about but this session was very instructive. Not only did we learned about all issues concerning authentication on the cloud, but also some solutions, with our without Geneva. If you have to deal with network administration or just are a developer focusing on the cloud, don't hesitate. The demonstrations did not work smoothly but the expected results were meaningful though.

TL20 Entity Framework Futures

Entity Framework is a great initiative from Microsoft. But this session did not reach the expectations I had. We learned how to do the simplest thing ever with an ORM tool, and people applaused ! Hey guys, this example was trivial ! Mapping a table with two columns to a POCO ? That's not "Futures". At least this shows what we could expect for next versions, but those features are already implemented in lot of open frameworks. At least, it's better than LINQ To SQL.

Universal Studio

As last time Microsoft invited everyone to visit the Universal Studio Park. Always great, free food, free amusements, including new ones: Simpsons replacing Star Wars, and a scary tour instead of the usual studio visit :>

2008-11-07

Ada-Europe 2009, 8 - 12 June 2009, Brest, France: CALL FOR PAPERS

posted by Agusti Canals

Ada-Europe organizes annual international conferences since the early 80's. This is the 14th event in the Reliable Software Technologies series, previous ones being held at:

=> Montreux, Switzerland ('96),
=> London, UK ('97), Uppsala,
=> Sweden ('98),
=> Santander, Spain ('99),
=> Potsdam, Germany ('00),
=> Leuven, Belgium ('01),
=> Vienna, Austria ('02),
=> Toulouse, France ('03),
=> Palma de Mallorca, Spain ('04),
=> York, UK ('05),
=> Porto, Portugal ('06),
=> Geneva, Switzerland ('07),
=> Venice, Italy ('08).

Call for Industrial Presentations

The conference also seeks industrial presentations which may deliver value and insight, but do not fit the selection process for regular papers.

Authors of industrial presentations are invited to submit a short overview (at least 1 page in size) of the proposed presentation to the Conference Chair by 12 January 2009.

The Industrial Program Committee will review the proposals and make the selection. The authors of selected presentations shall prepare a final short abstract and submit it to the Conference Chair by 11 May 2009, aiming at a 20-minute talk. The authors of accepted presentations will be invited to derive articles from them for publication in the Ada User Journal, which will host the proceedings of the Industrial Program of the Conference.

06.11.08

La Nuit de l'info 2008 et le défi CS

posted by Agusti Canals

CS propose aux équipes participant à la Nuit de l'Info 2008 de relever le défi UML-CS, à savoir réaliser le meilleur modèle UML en suivant la méthodologie UML-CS.

Pour participer à ce défi les équipes devront utiliser la version open source de l'éditeur UML Topcased 2.2.0 (rcp Linux ou win32) et suivre l'approche méthodologique UML-CS.

CS offrira un prix de 1500 € au groupe vainqueur

Pour en savoir plus ...

Les chaînes et le contexte linguistique

posted by amethyste

Les méthodes de manipulation de chaînes (StartWith, Equals, Compare…) ont évoluées avec le framework 2.0 afin de clarifier la prise en charge du contexte linguistique de l'application.

En parallèle, Microsoft a mis à jour ses recommandations [1] d'usage. C'est ce que nous allons examiner dans cet article.

Pour vous convaincre de ne pas abandonner tout de suite une lecture peut être austère, voici le genre de bug subtil qui pourrait vous arriver si vous ne prenez pas les bonnes précautions:

Thread.CurrentThread.CurrentCulture = new CultureInfo("en-US");
Console.WriteLine("Culture = {0}",
   Thread.CurrentThread.CurrentCulture.DisplayName);
Console.WriteLine("(file == FILE) = {0}",
   (String.Compare("file", "FILE", true) == 0));

Thread.CurrentThread.CurrentCulture = new CultureInfo("tr-TR"); Console.WriteLine("Culture = {0}", Thread.CurrentThread.CurrentCulture.DisplayName); Console.WriteLine("(file == FILE) = {0}", (String.Compare("file", "FILE", true) == 0));

On compare les mots file et FILE dans un contexte culturel US puis turc. On obtient:

Culture = English (United State)
(file == FILE) = True
Culture = Turkish (Turkey)
(file == FILE) = False

Imaginez maintenant que l'on compare des mots de passe par exemple…

Les bonnes précautions, quelles sont t'elles au juste?

D'une façon générale il est recommandé d'utiliser systématiquement les surcharges des méthodes avec le paramètre du type StringComparison.

Il s'agit d'une énumération prenant ses valeurs dans la liste suivante:

1. Ordinal
2. OrdinalIgnoreCase
3. CurrentCulture
4. CurrentCultureIgnoreCase
5. InvariantCulture
6. InvariantCultureIgnoreCase

Microsoft recommande d'utiliser a priori l'une des deux premières valeurs, ce qui convient dans la plupart des cas. La comparaison est effectuée au niveau des octets, il s'agit donc d'une comparaison très rapide.

De fait le bug se résout effectivement avec OrdinalIgnoreCase.

L'implémentation actuelle des méthodes sans surcharge utilise CurrentCulture. Mais la version 4.0 du framework utilisera Ordinal[2] à l'exception de CompareTo et Compare puisque ces méthodes sont en général utilisées pour des opérations de tri.

Il est donc important de prendre l'habitude de se servir des variantes avec surcharge ne serai-ce que pour faciliter la maintenance, c'est toujours sain d'être clair sur ses intentions, ou bien de développer des classes utilitaires.
Par ailleurs Equals utilise non pas CurrentCulture, mais Ordinal. Ce qui fait une complication supplémentaire lorsqu'on utilise les méthodes sans surcharge.

Initialement Microsoft recommandait d'utiliser l'option InvariantCulture. Le problème est que cette option amène .NET à effectuer certains choix conduisant de ce fait à des résultats parfois imprévisibles lorsque les caractères manipulés n'appartiennent pas au jeu de caractères ASCII.

Vous trouverez en [1] un tableau récapitulatif des cas d'utilisation des valeurs de StringComparison.

Bibliographie

[1] http://msdn.microsoft.com/fr-fr/library/ms973919(en-us).aspx
[2] http://blogs.msdn.com/bclteam/default.aspx

04.11.08

What I found great at PDC – Day 1

posted by Sébastien Ros

No, I did not only learned how to hide the ribbon ;) I also saw a lot of great sessions. In this series of four posts, one per attendance day, I will give you what sessions I think are worth seeing as a developer’s perspective. As I couldn’t be everywhere at the same time, I missed a lot of great other ones and I hope I’ll be able to see them also.

TL33 Managed Extensibility Framework: Overview

MEF is great thing, really. It’s very simple to use and adapted to real extensibility scenarios. The session was pretty good, with clear examples, and easy to understand. A question which is still pending in my mind is the coherence with other Microsoft tools like System.Addin and Unity. MEF could be a winner if it is adopted by developers as it is internally at Microsoft. Hum, this reminds me something related to data access, don't you ?

TL10 Deep Dive: Dynamic Languages in Microsoft .NET

This is a great session if you like dynamic languages. Jim is clever! Though, a lot of his examples were “stolen” by Anders Hejlsberg which was repetitive if you had assisted to this session also. If you want a headache at the end of the day, just watch this session. Not only is it really difficult to understand all the concepts he dealt with, but he also speaks really fast. Poor little French guys were we.

ES01 Developing and Deploying Your First Windows Azure Service

I have not seen this session at the PDC directly but at home. This is a great session to understand all the concepts behind programming for the Azure platform. Tables, Queues and blobs are well explained, and this is the only place where I had an answer whether a developer should use Azure storage or SDS.

2008-11-03

Install-party: Odyssud Blagnac, samedi 15 novembre, de 14h à 18h

posted by Agusti Canals

À l'occasion de la sortie de la nouvelle version 8.10 de la distribution GNU/Linux Ubuntu, nommée "Intrepid Ibex", Toulibre et l'association Ubuntu-fr organisent une après-midi de découverte et d'aide à l'installation de GNU/Linux, avec conférences, démonstrations et install-party. Les personnes désireuses d'installer une distribution GNU/Linux sur leur ordinateur peuvent venir avec.

03.11.08

Retrospective sur les Valtech Days

posted by Pascal Roques

De retour de congés, une petite rétrospective (;)) sur les très réussis Valtech Days.

J'ai eu le plaisir d'assister à de nombreuses présentations. Celles qui m'ont le plus intéressé :

- Les rétrospectives : la clef de l’amélioration continue
- Cloud Computing : uniquement utile pour les Startups ?
- Lean Software Development et pratiques agiles

Pour ma part, j'ai présenté SysML devant une salle comble, ce qui m'a à la fois surpris et rassuré, car la modélisation n'est pas un sujet crucial pour les agilistes... En discutant avec de nombreux participants aux pauses, il apparaît cependant que tous ceux qui avaient goûté aux bénéfices de la modélisation n'y renoncent pas en se lançant dans Scrum ou même XP ! Je reviendrai sur le sujet de la modélisation agile prochainement...

02.11.08

What I learned at PDC

posted by Sébastien Ros

Did you know that you can hide the ribbon and let it appear when the mouse hovers it by double clicking on any of the sections ?

PDC is fantastic, looking forward to going there again !

2008-11-01

UML and FM Workshop; October 27th, 2008; Kitakyushu-City, Japan

posted by Agusti Canals

First IEEE International workshop UML and Formal Methods co-organized by CS, CEA and Telecom Paris Tech.

Le workshop a été un franc succès avec près de 50 présents !! Les présentations ont été nombreuses et ont donné lieu à des débats très animés entre les sessions. Le panel final a permis de synthétiser les directions évoquées lors des présentations et a mis en avant le besoin de continuer à se réunir autour d'un thème toujours lié aux méthodes formelles et peut-être plus général qu'UML pour la partie informelle (pourquoi pas un DSML&FM pour la suite?).

Workshop (UML and Formal Methods) Team

31.10.08

A new Topcased version is available ...

posted by Agusti Canals

A new Topcased version is available : Topcased 2.2.0 It is based on the latest Eclipse 3.4.1 version (Ganymede), for further information on the project, visit the website

30.10.08

Journées Nationales du GDR Génie de la Programmation et du Logiciel, Toulouse, 28-30 janvier 2009

posted by Agusti Canals

Le GDR Génie de la Programmation et du Logiciel qui est né récemment souhaite profiter de ses premières assises nationales (Journées Nationales du GDR Génie de la Programmation et du Logiciel, Toulouse, 28-30 janvier 2009) pour lancer un concours de définition de son logo.

Procédure de soumission:

=> La procédure de soumission est libre et ouverte tous. La communauté est en particulier invitée à solliciter des étudiants comme les doctorants pour proposer un logo. Toute personne soumettant s’engage à le faire à titre gracieux si son projet de logo est retenu. De plus, cette personne s’engage à laisser libre de droit et d’usage le logo retenu.


La date limite de soumission est fixée au vendredi 16 janvier à minuit
.

=> La méthode de soumission est basée sur le système /EasyChair/ Pour soumettre, il suffit de procéder de façon similaire à la soumission d’un papier (« Submissions » puis « Add a submission »). La catégorie à utiliser est « LOGO » puis « uploader » le fichier incluant le logo proposé.

Qualités attendues :

=> Outre le fait que le logo doit donner une image fidèle de l’esprit scientifique du GdR GPL, il doit vérifier des propriétés standards des logos : simplicité des formes, nombre de couleurs limité, aptitude à passer en noir et blanc, aptitude à être aisément visualisé à grande et petite échelle (icône 16×16 pour la plus petite taille), etc.


Format du logo :

=> le logo doit être conçu dans le format standard JPEG. La dimension du logo doit être au maximum de 10cm de large et 5cm de haut.

Procédure de désignation du logo vainqueur:

=> Toutes les personnes dûment inscrites aux journées nationales ont le statut d’électeur potentiel. Un vote sera organisé durant ces journées avec une clôture du scrutin le vendredi 30 janvier à 12h. Les personnes présentes aux journées nationales se verront remettre un document avec toutes les propositions de logo dûment identifiées par des numéros. Le logo ayant retenu le plus de voix à l’issue du vote sera annoncé le 30 janvier après-midi. Le GdR GPL exploitera ce logo à compter de ce jour, sur son site Web notamment.

Pour plus d’informations, contactez Frank

:: Page suivante >>

Publicité

powered by
b2evolution