Evénements

Quelques comptes-rendus des événements auxquels j’ai eu la chance d’assister. Certains posts sont dans la file standard d’articles, certains ne sont publiés qu’ici.


QCon, Models and Integrism

Last modified on 2011-02-15 05:41:51 GMT. 1 comment. Top.

Cet article est disponible en français sur le blog d’Objet Direct.

logo_qcon8I am just coming back from my three days of escape at QCon London. As always, an opportunity to step back, take a breath, open my eyes on what others do, how they work. I can there feel the trends and try and guess what my job will look like, next year and even after.

I promise, I will sum up the best moments and the keypoints of the conference. But before I go on, I would like to react off the cuff on something that seems important.

However, this year, I come back with a bad taste in my mouth (don’t misunderstand : as always, beer was great !). A taste of bitterness and anger.

Modeling is not only banned from QCon (as it has already been in the past two years), it has become a dirty word.

Code is the all-time star, which is fair, considering development is the conference main concern. Pointing at yesterdays mistakes seems to be quite healthy too (especially “overmodeling” syndrom which used to be an obvious sign of lack of confidence in the development process).

But I can’t stand to hear stars like Uncle Bob (writer of an UML for Java Programmers in 2003 !) saying that “as we all know, models are completely useless”, or Dan North (who gave an excellent talk besides) considering that the use of a modeler is a useless “complification”. It sounds to me like hypocrisy, demagoguery or fundamentalism (which is not far from stupidity).

The only talk I attended which was positive about modeling was Eric Evans’s speach about agile design. Nevertheless, he did not use the word Modeling but the more consensual Design. I think he had the right word: he said that developer community had “thrown away the baby with its bath water”.

I had the feeling of being in a religious circle attending professions of faith.

On one hand, the code fundamentalists, pure monotheists, nostalgic of a mythical golden age when the developper used to be the one and only master of its production, communicating directly with God (the Product Owner), custodian of a millenium knowledge (the Software Craftsmanship) taught by guru’s mouth.

And there are those UMLists, seen as dangerous unfaithful visionaries, whose delirium corrupted the perfect world of the above. These ones have to be exterminated by all means. I felt like being under a fatwa !

As always when there are problems, we need to find scapegoats. The models (and those who make them) seem to play this role today: symbols of the « Big Upfront Design », they are being the responsible for the failure of big projects. The models are seen as pure documentation artifacts: modeling would be a time consuming and unnecessary (or even perverse) activity, especially in an agile world.

In such a surrounding, I was really ashamed of showing my business card: besides my name you can read “MDA business line manager”. Like having an STD!

Yet it seems to me that modeling, instead of developping, allows to:

  • analyze a problem
  • compress its complexity
  • give a global view
  • abstract from technology
  • communicate

My brain is not big enough to do all this on its own. I need UML (or any other formalism) both as a crutch, a whiteboard, a memory expansion, a pair of glasses and a math formulary.

Modeling is not against developing (not to mention MDA that combines both). Modeling simply helps developing better.

Moreover, the code itself IS a model (“system of abstractions that describes selected aspects of a domain”) as an UML diagram is. Just a little more verbose (and a little more easy to execute).

Maybe this gap is only a symptom of various thinking modes: a French analytical thought (after all, Descartes and Merise are French creations!) vs. a pragmatic Anglo-Saxon thought.

I like to think there is good in both worlds and both complement each other nicely. By the way, it is what I think is the main interest of our job: to analyze a problem in order to be able to computerize its solving. This is what renews my daily motivation: how can I put the complexity of the world in a (good) program.

2011/02/15 Comments have been re-opened.

Wake Up REST à la Cantine

Last modified on 2008-09-30 00:29:53 GMT. 0 comments. Top.

image J’ai eu la chance de participer jeudi matin (25/09) à une nouvelle initiative de Didier Girard (au fait, merci Didier), grand animateur de la communauté des architectes. Un « Wake Up » : ambiance conviviale autour d’un café à la Cantine (un peu tôt pour la bière tout de même !) pour une rencontre qui se voulait un brin polémique. L’idée était de nous faire réagir à l’arrivée de REST dans les architectures Web.

Didier nous présente REST comme un retour aux sources : finalement le web comme outil de publication documentaire à fait ses preuves, pourquoi ne pas voir une application comme un fournisseur de ressources (vues logiques sur les données) mises à disposition par les applications. Chaque ressource peut-être lue (GET), mise à jour (POST), créée (PUT) ou supprimée (DELETE) via une opération HTTP standard. Un des intérêts, faciliter la mise à disposition des données du SI (agrégée à la demande via des portails) et susciter de nouveaux usages.

Retour de balancier : la SOA voyait l’application comme fournisseur de services, les données n’étant que les valeurs de sortie des-dits service, REST nous propose une vision duale de la SOA, où les traitements sont implicites (une donnée est dans un état qui est gouverné par la dernière requête qui y a accédé).

Comme je l’ai dit lors de notre discussion jeudi, j’ai encore du mal à voir la valeur ajoutée, ou plutôt, j’ai l’impression que l’architecture REST, comme la SOA, est réductrice : les applications de gestion (celles sur lesquelles je travaille) sont plutôt conçues par rapport aux processus qu’elles automatisent et donc, centrées sur des activités métier (qui correspondent aux cas d’utilisation de l’application). Seules exceptions, les Référentiels, responsables de garantir la cohérence des données de références du SI ne fournissent souvent que des services CRUD (justement ceux cités plus haut). REST serait l’architecture adaptée à la mise à disposition en architecture web des Référentiels du SI ?

Je pense surtout qu’on tourne en rond ! Au « commencement » on publiait des documents sans état (web 1.0). On s’est rendu compte que pour faire des « vraies » applications, on avait besoin de publier des services (avènement de la SOA). On trouve ça trop compliqué (à juste titre) et on revient à la publication des données.

En fait quel est le besoin ? C’est la notion de « formulaire » au sens large : des données affichées + des traitements associés (les boutons). Suivant le cas, l’intérêt de l’utilisateur est plutôt centré sur les données ou sur les traitements.

Dans le cas général, cette chose étrange qui réunit des données et des traitements, on pourrait par exemple l’appeler un « objet » et se demander comment le publier sur le web…

Vivement la prochaine fois pour un Tribunal du SI ;-)

Google Developer Day Paris

Last modified on 2008-09-30 00:26:21 GMT. 0 comments. Top.

image J’ai participé la semaine dernière (18/09), comme spectateur, au passage à Paris du Google Developer Day.

Un petit retour rapide sur deux des présentations auxquelles j’ai assisté :

Android

J’ai eu envie d’en savoir un peu plus sur Android, un des buzz à la mode. Malgré un présentation plutôt sympa, pas d’annonce fracassante ni d’exclu juteuse. On n’a même pas pu voir le G1 « en vrai » !
Petite confidence « off » du conférencier : « j’ai un iPhone et un G1 et je préfère quand même l’iPhone » :-)

Un truc très sympa : un gagnant français du concours de développements Android (Android Developer Challenge) organisé par Google à parlé de son appli : un central de gestion de covoiturage (avec paiement éventuel et gestion de blacklist) intégrant la géolocalisation. A suivre probablement.

Au passage le concours en question, très bien doté puisqu’au total, ils ont distribué 5 millions de dollars, leur a permis de se constituer une logithèque de qualité (~2000 softs) avant même la sortie du mobile !
La vraie question est : nous, développeurs d’applis de gestion, devons-nous nous pencher sur le développement mobile ? Devons nous investir, nous former ?

Autant vous le dire, la présentation ne m’a pas apporté la réponse :-(

M2C : même si le rapport au mobile est aujourd’hui très « personnel » voire privé, il me semble que son coût extrêmement faible au regard de la technologie qu’il embarque devrait (moyennant un peu plus d’imagination que ce à quoi nous avons habitué nos clients) nous permettre d’explorer de nouveaux « use cases ». Désolé, ça reste vague, mais je pense que ça viendra probablement de la BI pour qui la diffusion d’informations, leur présentation, la dimension « aide à la décision » devraient être des moteurs. Je vais en causer avec mes voisins de bureau

Google App Engine

La présentation pour laquelle j’étais essentiellement venu m’a laissé sur ma faim. Il m’a semblé que les deux conférenciers (non « Googliens ») avaient juste passé deux heures de plus que moi sur le sujet (j’avais téléchargé le SDK la veille et déroulé le « Hello World » : 10 mn montre en main) ! Ils ont déroulé le Hello World en une demi-heure puis passé en revue les services disponibles. A leur décharge, on ne peut pas dire que Google nous « arrose » d’informations sur le sujet !

Pour résumer, qu’est-ce que le Google App Engine ?

  • Vision commerciale : c’est l’offre « cloud computing » de Google (essentiellement en réponse à EC2 d’Amazon).
  • Vision technique : c’est un serveur d’application hébergé exclusivement chez Google et qui s’appuie sur son infrastructure et met à disposition ses services : authentification, mail, persistance dans « BigTable » (LA base Google), accès aux Google Apps…

Concernant la technique, plusieurs points peuvent faire « tiquer » : un développement pour Google App Engine est exclusivement pour Google App Engine ! Google n’a pas eu la volonté d’implémenter, avec ses ressources, un serveur d’appli « standard » (J2EE ?). Tout est un peu « exotique » : l’authentification nécessite d’avoir un compte Google (la page d’authent est la même que pour votre GMail), la base n’est pas relationnelle, le langage de programmation est Python… et, aujourd’hui, aucune solution connue (en tout cas utilisée dans ma boîte, Objet Direct) ne permet de développer facilement (c’est le point important !) des IHM web pour GAE.

Ca veut dire, investir pas mal pour un business à peine émergent (GAE n’existe que depuis avril !).
La donne va changer dès que les API java sortiront (ce qui ne devrait tout de même pas tarder, même si, même sous le sceau du secret, ils ont refusé de nous dire quand !).
Il est donc urgent d’attendre (mais pas longtemps, j’espère).

Une chose très sensible : ce sont des maniaques du secret. Je pense que même après douze bières, il est impossible de leur faire avouer quand java sortira sur GAE. Il doivent avoir un flingue dans le dos (et en tout état de cause, ils sont très, très « briefés »).
A part ça je confirme que l’accueil était très sympa et l’esprit (faussement !) startup affiché (allez voir les photos, il y a même une preuve que j’y étais !). Une bonne occasion de faire du networking » et/ou du recrutement ou tout simplement de croiser des gens sympas « en vrai » (salut Samuel :-) ) ou de vieilles connaissances.

Et, comme prévu, malheureusement, pas de MD chez Google pour le moment :-(

Présentation au Paris JUG

Last modified on 2008-09-25 21:08:08 GMT. 2 comments. Top.

image J’anime le 8 juillet à 20h, une des deux présentations du Paris JUG (Java Users Group). Le titre « Pourquoi tout le monde ne fait-il pas du MDA ? » annonce le ton. La présentation sera un peu polémique :-)

En particulier j’essaierai de montrer ce qui, aujourd’hui, freine l’adoption des démarches par transformation/génération (plate-forme incomplète, approche trop naïve, rareté des bons profils, changement d’organisation) et comment tenter d’y remédier.

En espérant vous y croiser et échanger sur le sujet autour d’une bière.

Ca se déroule dans les locaux de la FIAPP au 14 rue Cabanis dans le 14ème.

J’ai l’honneur de partager la soirée avec James Ward (Mr Flex chez Adobe) qui anime le slot 21h30-22h30 sur « RIA avec Flex et Java ».


Un petit lien vers les slides de la soirée.

Séminaire MDA à Grenoble

Last modified on 2008-05-22 12:03:28 GMT. 0 comments. Top.

clip_image002J’anime le 12 juin après-midi à Grenoble un séminaire (gratuit !) sur MDA : « De la modélisation métier à l’application générée, comment tirer parti concrètement du MDA ?« .

Après une présentation générale des concepts j’expliquerai comment rendre efficace un processus MD. Je parlerai particulièrement de deux problèmes, à mon avis, difficiles :

  • Comment inclure les traitements métiers dans le modèle d’analyse ?
  • Comment dépasser le modèle de domaine et mettre en oeuvre une vraie modélisation applicative ?

Je présenterai un cas réel de l’utilisation de prototypes fonctionnels pour simuler et valider une analyse MD (avec D.OM) et une mise en œuvre concrète de la plate-forme MDA d’Objet Direct (Metadone) sur laquelle je travaille.

Vous pouvez vous y inscrire en ligne ici. Je serai ravi de vous y rencontrer et d’échanger sur le sujet.

Erich Gamma : le projet Eclipse, l’agilité, et Jazz

Last modified on 2008-10-24 05:04:20 GMT. 0 comments. Top.

Avec quelques semaines de décalage, je vous publie les comptes-rendus des conférences QCon 2008 auxquelles j’ai assisté à Londres en mars pour le compte d’Objet Direct. C’est la première, les autres suivront rapidement.

image Le « KeyNote » d’ouverture de Gamma (oui LE Erich Gamma, le premier du GoF des Design Patterns !) : « How Eclipse changed my views on Software Development »
C’est la seule présentation dont l’accès aux slides nécessite un mot de passe (je n’ai pas réussi à savoir pourquoi).
En deux parties :

  • D’abord ce qu’Eclipse a changé dans sa façon de développer : éloge de l’agilité dans un environnement distribué.
    Il a présenté la genèse d’Eclipse, et en particulier, le tunnel de 2 ans avant la première livraison « visible » (à part avec un sponsoring d’une boîte comme IBM qui aurait pris la décision stratégique de prendre le marché, je ne vois pas comment il est possible de justifier ce type d’investissement !). Au fait, peut-on vraiment parler d’agilité dans ce cas ?
    Il a expliqué que l’aspect le plus important pour un projet comme Eclipse est le « timeboxing » (pilotage par les délais) et de livrer impérativement à la date prévue. Les gens attendent, et téléchargent beaucoup les livraisons « Milestone » intermédiaires.
  • Ensuite, de la pub pour le nouveau produit de Rational/IBM (pour qui il bosse) : Jazz (www.jazz.net). Une plate-forme de développement de projet intégrée autour d’eclipse (un concurrent direct du CodeX de Xerox qu’Objet Direct distribue et utilise). Il le présente comme un « accélérateur d’agilité » qui facilite le suivi et le travail en groupe surtout si les équipes sont distribuées. La démo était alléchante (mais c’était une démo). Mais l’outil semble assez riche, donc (!) compliqué, donc avec un ticket d’entrée assez élevé : en particulier, il n’a pas parlé du paramétrage. C’est un produit commercial mais il est téléchargeable et utilisable en beta gratuitement (attention au petit doigt dans l’engrenage !).

Mon avis :

Un peu décevant de la part d’un « gourou ». Si la première partie était intéressante, la seconde était, à mon avis, beaucoup trop « commerciale » pour une introduction en séance plénière de ce type de conf.
Plus rigolo, Didier Girard l’a interviewé (questions en français, réponses en anglais) pendant le (à la place du :-( ) déjeuner et j’ai assisté à la « pré-interview ». En gros, il ne travaille plus du tout sur Eclipse (d’ailleurs, dans son interview, il farfouille sur son PC pour pouvoir répondre à la question « Quelles sont les nouveautés dans eclipse 3.4 ? » et la réponse est plutôt foireuse :-) ).
Autre constat, manifestement les designs patterns sont assez loins…

DSL aux QCon

Last modified on 2008-03-21 09:17:46 GMT. 0 comments. Top.

image J’ai eu la chance de participer, pour Objet Direct, la semaine dernière, aux QCon à Londres. Malgré de nombreuses interventions de haut niveau, il y avait, malheureusement, peu de speach en rapport avec l’approche MD. Le thème sur les DSL était probablement le plus proche de mes préoccupations du moment. Le speach le plus intéressant était celui de Markus Völter, External Textual DSLs made simple, qui présentait XText. Il s’agit d’un outillage eclipse qui permet très simplement de produire un environnement de développement pour un DSL.

En effet, un des prérequis à l’adoption de DSL est la disponibilité d’outils de « développement » associé. Personne n’acceptera d’utiliser un DSL avec Word comme IDE…

imageLe principe de XText est simple : en entrée, on fournit une grammaire BNF du DSL (plus quelques infos facultatives supplémentaires : contraintes exprimées en OCL, contenu et structure des vues sur le code), l’outil génère, sous forme d’un plugin eclipse, un parseur, un modèle cible (EMF), un compilateur vers ce modèle et un éditeur qui fournit tout ce qu’on attend : coloration syntaxique, complétion du code, vue « outline » personnalisable, validation temps réel de contraintes.

Le « DSL-IDE » produisant de l’EMF, il est possible d’exploiter sa sortie avec tout l’outillage diponible : visualisation graphique, transformateurs de modèle, générateurs de code. En particulier, il est possible d’intégrer la compilation de ce DSL dans une chaîne de transformation OpenArchitectureWare (oAW Workflow).

Je pense essayer rapidement l’outil avec un petit langage orienté vers la saisie d’exigences métier. Je vous tiendrai au courant.

MDDay

Last modified on 2007-12-19 21:41:20 GMT. 1 comment. Top.

Vendredi 30/11 s’est déroulé à Paris le premier MD Day.
Logo MD Day

Plus de 130 personnes présentes (on se battait pour une place assise !) ont assisté aux 8 présentations des différents intervenants.


Les éditeurs reconnus (Objecteering, MIA Software, Lyria) ou émergents (Obeo) et les sociétés de service (Objet Direct que je représentais) ou de formation (Oxiane) côtoyaient les intervenants externes universitaires (Xavier Blanc du Lip6), indépendants (Dominique Vauquier) et même un représentant de Microsoft (François Mérand).

Le matin avant la foule

Le premier élément marquant de cette journée est, à mon avis, l’émergence d’une véritable communauté « Model Driven ». Les acteurs français les plus importants étaient présents, en tant qu’organisateurs, speakers ou dans l’audience. Côté fournisseurs, des startups du domaine (Jaxio), venues voir ce que proposaient les acteurs « installés », cotoyaient les grandes SSII (Atos Origin, Cap Gemini, Unilog). Côté clients, tous les domaines métiers étaient représentés : de l’industrie (Alstom, EADS, Thalès, Snecma) aux Telecom (Bouygues Telecom, Orange) en passant par la banque (BNP Paribas), l’administration (CETE, DGA, Ministères de l’Intérieur, des Finances, de l’Ecologie, du Budget), la recherche (CEA, INSERM, INRA, IFREMER) et le monde académique (Centrale Lille, Lip6, Paris 8, IIE).

Le second point était lié au parti pris de la conférence : présenter des retours d’expérience concrets. A cet égard certaines présentations client ont démontré la faisabilité de l’approche (ce qui n’était pas gagné a priori). J’ai particulièrement apprécié la présentation de la SNCF (même si les slides n’étaient pas très lisibles) qui montrait une mise en oeuvre à grande échelle (donc / mais) très pragmatique, et celle de l’Unedic dans laquelle je retrouve certains des concepts qui me sont chers (tout ce qui tourne autour de la modélisation applicative).

Enfin, dernier constat, derrière MD, il y a des concepts et, surtout, des cibles très variés :

  • Industrialisation et standardisation des développements pour la SNCF (MIA Software) et l’Unedic (Obeo)
  • Productivité et évolutivité des IHM pour EADS (Lyria)
  • Industrialisation d’une urbanisation par les services (même si cela n’a pas été explicitement évoqué, l’approche MD est une bonne manière de garantir l’alignement de l’informatique sur le métier) pour SMABTP (Objecteering)
  • Adéquation aux besoins utilisateurs et « acceptabilité » des applications pour CACEIS (Objet Direct)

Tous les organisateurs semblent d’accord pour remettre ça rapidement.

Buy viagra Rome
buy buy online viagra viagra
cialis black reviews
cialis brands
Buy viagra Philadelphia
voagra online without prescription
cialis brand verses generic cialis
cialis blindness
viagra calias
cialis britain
discount viagra prescription drug
buy cheap generic viagra
viagra buy do nu
buy cheap deal viagra viagra viagra
cheapest regalis viagra
order cialis on-line
buy cheap deal online viagra viagra
buy cialis wighout prescription
redtube viagra
buy discount generic viagra
buy levitra no prescription
redtube viagra
order cheap cialis
cialis 20 mg
buy cheap cheap kamagra uk viagra
cialis cialis genuinerx net viagra
cheep viagra from indea
viagra without prescription
cheapest price for generic viagra
levitra 25 mg
cialis canadian geneic
cialis by phone
cheapest cheap viagra
viagra buy now pay later
cheap viagra without a pr
Buy viagra Milwaukee
buy cheapest online viagra
viagra buy generic
cialis canadian
cheapest line viagra
Buy viagra Albuquerque
buy buy cheap viagra
Buy viagra El Paso
viagra buy australia
viagra buy in uk online
cialis 800mg
cialis calis
Buy viagra Kansas City
Buy viagra Houston
order cialis on line
buy cheapest viagra online
viagra 100mg price
viagra canada price
cialis canada pharmacy
discount viagra canada
Buy viagra Tulsa
cialis buy cialis generic cialis
Buy viagra Fresno
rx levitra 100mg
cheap viagra canada
buy buy medved viagra viagra
viagra online prescription
discount viagra
cialis cheap visa
viagra express
100mg levitra
Buy viagra Mesa
overnight express delivery generic cialis
cheapest price viagra us licensed pharmacies
buy cheap viagra online u
buy viagra 50mg
order 50mg cialis
cheapest viagra prices us licensed pharmacies
cheapest price for viagra
discount viagra 10 pack generic
cialis 5mg
cheapest viagra in uk cheap
buy cheap viagra online now uk
cheapest brand viagra
cialis cheap cialis online
cheapest viagra tablets
cheapest generic silagra viagra
buy cheap uk viagra
cheapest price for viagra
buy cheap viagra in uk
discount viagra uk
cialis britan

viagra by the pill
buy discounted viagra
buy cheap deal pill viagra
order generic cialis softtabs
cheapest site viagra
10 generic cialis for 19.95
cialis canada
buy deal online sale viagra viagra
viagra buy ionline
cialis brand cialis 100mg
cialis cheapest
buy cheap viagra
discount viagra sales
viagra buy general
order cialis uk
Buy viagra Seattle
viagra by overnight delivery
buy cheap viagra prescription online
generic levitra wholesale 100mg
overnight shipping cialis
buy levitra wighout prescription
levitra no prescription
buy viagra by pill
generic levitra 20mg pills erections
viagra canada pharmacy
100 mg levitra us pharmacy
order 50mg viagra
buy australian viagra
discount drugs levitra 100mg
buy viagra caverta
buy buy discount viagra viagra viagra
buy cheap viagra cheap viagra online
viagra canada price
check generic order pay viagra
cheapest viagra generic substitute
viagra canadaian prices
buy cheap viagra uk
cheapest viagra
buy buying sale viagra
cialis bph
viagra canadian price shipped
buy cialis online 50mg
cheapest viagra online plus zenegra
over the counter viice for generic viagra
buy buy sale viagra viagra
cialis no prescription
discount viagra overseas
buy discount online viagra
discount viagra furthermore cheap adipex reviews
order cialis
order generic cialis c o d
buy buy cheap medved viagra
discount viagra pills
cheapest generic substitute viagra
levitra 100mg
rx cialis 100mg
cialis 800mg
10mg levitra
buy cheap viagra viagra
order cialis online from dreampharmaceuticals
buy cheap online prescription viagra
discount viagra order viagra discount viagra
20 mg cialis
cialis black 800mg
buy buy cheap medved viagra
36 hour levitra
discount viagra or xanax
cheapest generic viagra and xanax pills
overnight delivery cheap cialis
viagra canada
Buy viagra Memphis
buy cialis no prescription
levitra 125 mg
viagra buy viagra
cheapest prices on generic viagra
buy deal viagra
cialis without prescription
viagra by mail
10 generic viagra for 19.95
cialis br
cheapest prices for viagra online
viagra buying
cheapest viagra overnight
buy cheap viagra
buy viagra wighout prescription
cheep viagra from india
cialis buzzmachine by jeff jarvis
viagra buy
cialis canada prescription
Buy viagra Long Beach
Buy viagra New Orleans
buy deal deal price viagra
cialis best effect
cheap viagra without a prescription
buy viagra 100mg
order cialis online
cheapest price on viagra
buy viagra cialis levitra online prescription
Buy viagra Phoenix
cheapsest viagra online
viagra canadian
buy viagra cheap
buy discount viagra
cheapest generic viagra caverta veega
buy viagra cheap online
overnight delivery cialis
cialis best price
paypal cialis
cialis black
cheep viagra 600mg uk
discount viagra brand drug
buy viagra cheapest best prices online
buy cost low viagra
over the counter viagra substitute
cialis by fedex
cheapest generic viagra and canada
cialis canada rx
buy canada viagra
cialis dosage 20mg
cialis 20mg reviews
generic cialis wholesale 100mg
discount drugs cialis 100mg
cialis reviews
cialis cialis forum pharmacy
over the counter viagra london
Buy viagra Indianapolis
cialis black reviews
cheapest viagra anywhere
cheapest viagra uk
cialis 10 mg
cialis cheap online pharmacy
cialis cialis
cheapest viagra anywhere
buy discount viagra online
voagra online without prescription
cialis cialis genuinerx net
viagra canadian
buy viagra alternative
Buy viagra Charlotte
viagra canada prescription
cialis 50mg
100 mg cialis us pharmacy
voagra online without prescription
cheapest viagra prices uk
cialis cialis cialis genuinerx net viagra
buy viagra cheaply
buy cheap xanax generic flomax viagra
viagra cailis
cialis 50mg online
cheapest viagra price
cialis causes high blood pressure
cialis canadian epharmacy
cialis cialis generic viagra
Buy viagra Columbus
50 mg viagra
cialis certified online pharmacy
overnight generic cialis
100mg cialis
cialis 20mg
buy generic online viagra
peak level of cialis in blood
30mg cialis
Buy viagra Tucson
cheapest viagra on line
buy discount levitra
100mg viagra
buy cialis 50mg
viagra buy oonline
cheapest price on viagra
cialis cialis information
cialis best cialis price
Buy viagra Baltimore
viagra no prescription
viagra canada generic
Buy viagra Pittsburgh
cialis cialis tadalafil
buy cheap cialis
50 mg cialis
viagra buying online
buy buy medved viagra viagra
buy cheap viagra online uk
cialis buy cheap cialis online index
generic cialis 20mg pills erections
buy discount cialis
cialis canadian pharmacy
levitra brand levitra 100mg
cheapest place to buy viagra
discount viagra sale
buy viagra cheapest
viagra calgary
viagra canada
buy viagra cheap india pharmacy
cheapest uk viagra
cialis canada generic
viagra brand viagra 100mg
cialis buy generic
buy levitra 50mg
viagra and eye sight
discount viagra offers
cheapest viagra world
10mg cialis
viagra 100mg
viagra 50mg online
cheapest prescription viagra
cialis cheapest lowest price
cialis 36 hours
buy cheap deal viagra viagra viagra
buy cheap generic online viagra
buy cheap viagra on the net
viagra by mail canada
cialis cialis drug generic flomax
buy cheap deal online viagra viagra
cialis 2.5
Buy viagra Fort Worth
discount viagra viagra
levitra 50 mg
buy buy free viagra viagra viagra
buy buy free viagra viagra viagra
cialis cheapest online prices
40 grams of cialis
discount viagra drug
cialis brand name
buy discount viagra online a href
cialis cheap online direct
paypal cialis po box
buy viagra no prescription
buy cheao cgeap kamagra uk viagra
buy levitra online 50mg
cialis buy cialis online
buy female viagra
Buy viagra San Antonio
buy buying sale viagra
cheapest generic viagra 99 cents
levitra 50mg
Buy viagra Las Vegas
cialis buy generic ed
buy canada in viagra
cialis cardiac risks
buy 10 mg cialis
cialis bestellen
canada pharmacy discounted levitra 100
Buy viagra Omaha
viagra buy viagra online
buy viagra and cilas
50mg cialis
buy canada viagra
cheapest generic viagra
cialis online prescription
cheapest place buy viagra online
buy deal herbal viagra viagra
cheap cialis canada
order cialis and viagra
viagra canada online pharmacy
Buy viagra Oakland
order cialis 399
order cialis online dream pharmaceutical
Buy viagra Denver
cialis cheapest price
cheapest viagra in uk che
cialis best price buy online
overnight delivery of cialis
Buy viagra Washington
buy cheao cgeap kamagra uk viagra
viagra by phone
levitra 20 mg
50 mg viagra retail price
Buy viagra Modesto
Buy viagra San Francisco
cialis 125 mg
250 mg levitra
cheapest viagra on the net
10 generic levitra for 19.95
cheapest prices for viagra online
order 50mg levitra
cheapest uk supplier viagra
Buy viagra Newark
cheap 25mg viagra
discount viagra pharmacy online
viagra and eye damage
Buy viagra Nashville
cialis buy
cheep generic viagra
cialis buy cialis online order cialis
generic viagra 20mg pills erections
cheapest generic viagra 99 cents each
cialis buy online cheap tadalafil
viagra by mail order
cheapest price viagra
viagra canada pharmacy
buy cialis now
buy cheap site viagra
levitra 25 mg order
cheap cialis canada
viagra canada online
cialis 100mg
buy cheap viagra on
buy cheap viagra online
levitra without prescription
discount viagra perscription drug
cheapest viagra online pharmacy
cheap websites for viagra
cheapest in uk viagra
cialis cialis cialis viagra
levitra 10mg 20mg
Buy viagra Austin
cheap cialis canada
cialis cheap no prescription
50 mg cialis retail price
cheapest viagra in uk che
generic levitra 100mg
buy free viagra viagra
cialis cialis viagra viagra
Buy viagra Louisville
order generic cialis softtabs online
ordering generic cialis from india
cialis cialis online online
buy viagra
cialis black
viagra 50mg
perscription cialis
cialis buy generic flomax
Buy viagra Portland
viagra canadian price shipped
buy viagra ebay
cialis bestseller
buy cheap online viagra
5mg cialis generic
buy buy discount viagra viagra viagra
over the counter drug to viagra
buy viagra 1
viagra calias
Buy viagra Richmond
cialis cialis genuinerx net viagra viagra
buy cheap online viagra viagra
viagra by money order
viagra canadian prescriptions
discount viagra sale online
discount viagra wholesale stores discount pharmacy
cheapest online viagra
viagra buy it
cheapest regalis viagra
cheapest cialis
cheapest place to buy viagra online
buy buy online sale viagra viagra
cheapest generic viagra sent overnight
buy cheap generic viagra online
discount viagra canada
cheapest generic price viagra
cheapest uk supplier viagra
buy cheap purchase uk viagra