Ah ben ca tombe bien, t'iras te plaindre au meme endroit si Amazon deconne, c'est beau non?
If you can find a host for me that has a friendly parrot, I will be very very glad. If you can find someone who has a friendly parrot I can visit with, that will be nice too.
Tout à fait d'accord, mais le maillon non fiable se fait souvent ejecter trop tard, quand c'est visible.
Certes, mais vu la sante financiaires des organisme de credit, la fraude reste minimale. C'est bien la preuve que le systeme marche, non?
T'a jamais joué à ça plus jeune ? il est assez facile avec un peu de social de se faire livrer chez un petit vieux ou sur une ZI, et ça m'etonnerais que ça ai beaucoup changé.
Joue a quoi? A monter des arnaques? Desole non, j'ai fait pas mal de conneries, mais rien de debile.
On commence a sortir du simple "suffit de piquer un mot de passe et de siphonner un compte" la non?
Il peut aussi commander de l'immatériel. Amazon vend des bouquins electronique par exemple il me semble.
L'immateriel pose encore moins de problemes vu qu'il suffit de revoquer le contenu et rendre les sous a leur proprietaire. Doit bien etre la seule utilisation legitime des drm tiens.
Qui te dis qu'il ne sont pas stocké en clair ?
Probablement parce qu'aucun organisme de credit ne les laisserait faire si c'etait pas le cas ;-)
L'organisme de credit/la banque est en premiere ligne quand il faut rembourser suite a une fraude, on peut leur reprocher beaucoup de choses, mais pas de faire gaffe a leur sous a eux.
Combien de problèmes connus, difficile de savoir doux vient la fraude quand tu n'utilise pas un OTP
Ah ben avec ce genre de raisonnement on va aller loin!
Note que meme avec un OTP, tu sais toujours pas d'ou vient la fraude, juste que l'attaquant a reussi a un generer un valide...
If you can find a host for me that has a friendly parrot, I will be very very glad. If you can find someone who has a friendly parrot I can visit with, that will be nice too.
De deux cas l'un.
1. c'est une maladresse legitime de la part d'un magasin legitime. En gros, ya robert qu'a deconne. Tu te plains aupres de ton organisme de credit, qui tout d'abord te rembourse et ensuite se retourne vers le magasin en question et lui tape tres tres tres fort sur les doigts.
En gros le magasin se prends des penalites et apres un (faible) nombre d'erreur de ce genre se fait retirer son agrement. Ca veut dire "plus de carte bleu" donc ils peuvent fermer et vendre le mobilier pour payer les creanciers. Et robert va se faire suicider au fond d'un parking.
Crois moi que ton numero de CB ils y font tres tres attention, c'est ce qui leur permet de vivre.
2. c'est une arnaque en bonne et due forme, le mec va pas se faire chier a stocker un numero de cb, il va se servir et se barrer.
Et un jour se faire gauler et passer 25 ans en pyjama orange sur une plage de Cuba.
Le systeme marche sur la confiance, croit moi que ceux qui ne sont pas fiables se font vite ejecter du systeme.
votre propre compte chez le marchand peut être piraté, surtout si vous utilisez le même mot de passe partout et si vous vous connectez régulièrement à un service de courrier non sécurisé — par exemple celui d'Orange, au hasard — depuis un réseau qui ne l'est pas d'avantage ;
L'attaquant n'aura pas le numero de la carte qui n'est visible de personne excepte le systeme de paiement. Au mieux, il peut acheter une playstation 3 chez amazon et te donner l'adresse ou aller l'arreter. Supayr!
Reste le probleme de l'attaque profonde ou l'attaquant arriver a casser l'encryption des numeros. Bon.
10 ans d'amazon, des centaines de millions de cartes de credit, combien de problemes a ce jour?
4 ans d'app store, 100+ millions de cartes de credit, combien de problemes a ce jour?
Dans le cas de sony, ils ne savent pas si les numeros se sont fait piquer. Ca inspire pas confiance, c'est sur, mais peut etre attendre la conclusion avant de crier haro sur le baudet?
Et sinon, le thai a 3 block de chez moi a mon numero de carte de credit, ca m'evite de lui repeter 16 chiffres + date regulierement. Et s'il se sert? Deja il se sert pas sans ma signature, et meme s'il le fait cf 1, je me fais rembourser, il ferme son resto et part decouvrir les joies du ramassage de savonnette a Chino (offense federale plutot grave)
If you can find a host for me that has a friendly parrot, I will be very very glad. If you can find someone who has a friendly parrot I can visit with, that will be nice too.
T'as ete verifie que le logiciel des DAB et des terminaux de paiements sont surs? Ca t'empeche pas de les utiliser pourtant...
Allez, c'est vite vu, jettes moi vite cette carte bleu que je ne saurais voir.
If you can find a host for me that has a friendly parrot, I will be very very glad. If you can find someone who has a friendly parrot I can visit with, that will be nice too.
En 10 ans de dev intensif, jamais je ne me suis dit "pinaise, l'heritage multiple simplifierais mon probleme".
If you can find a host for me that has a friendly parrot, I will be very very glad. If you can find someone who has a friendly parrot I can visit with, that will be nice too.
A moins que ta list contienne 1 000 000 d'elements, ca va pas faire une grosse difference. Ca va potentiellement meme etre plus lent de calculer ton hash que d'iterer 100 elements d'un tableau.
Tout depend de ce que tu manipules, mais la performance a pas forcement un gros impact sur tes performances, si ca en a un. Par contre t'as un tres gros gain sur la qualite de ton code.
If you can find a host for me that has a friendly parrot, I will be very very glad. If you can find someone who has a friendly parrot I can visit with, that will be nice too.
Non, c'est pas ca. Le root aggregate se concentre uniquement sur la manipulation d'un ensemble clairement defini, pas sur tout et n'importe quoi. Il faut aussi que l'ensemble ait une cohesion et qu'il existe des regles de manipulation dudit ensemble, sinon ca sert pas a grand chose a part rajouter une classe pour rien.
C'est un concept qu'on retrouve dans la vraie vie. Un ensemble se manipule plus proprement et simplement quand tout se fait un point d'entree designe.
Une equipe est mieux geree par un chef d'equipe plutot que d'avoir des gens qui prennent des ressources de leur cote.
Un stock en magasin se doit d'etre gere par quelqu'un sinon ca devient le bordel. J'ai la flemme de chercher mais on peut trouver d'autres exemples.
If you can find a host for me that has a friendly parrot, I will be very very glad. If you can find someone who has a friendly parrot I can visit with, that will be nice too.
L'idee c'est qu'un ensemble d'objets est lie ensemble par le root aggregate, qui est responsable de fournir des methodes d'acces aux dits objets et maintenir la cohesion du tout en forcant toute manipulation de l'ensemble a passer par lui. T'as un point central d'acces a ces objets, ce qui concentre la logique au bon endroit et permet d'implementer la logique metier proprement.
T'as bien evidemment toujours le droit de recuperer un seul objet de l'ensemble et le manipuler comme tu veux, mais tu dois le recuperer via le root. Souvent t'as un backpointer vers le parent, qui te permet d'implementer a moindre cout des gardes fous ou d'acceder aux freres de l'objet en question.
L'interet immediat c'est que ca te garantit que ton graphe d'objet est toujours consistant (au sens anglais, le francais me vient pas a l'esprit, desole), l'autre interet c'est la lisibilite du code, sans compter les trucs habituels, encapsulation donc refactoring facilite, reutilisablite du code etc.
Pour les maps le gros problemes c'est que c'est un gros sac offrant tres peu de souplesse niveau manipulation, sans compter que ca retire beaucoup de semantique.
Transforme ca en une liste d'objets liant la cle a la valeur (ce qui te permet en cado bonux de rajouter de la logique sur cette association), le tout lie ensemble par un root aggregate, tu gagnes enormement:
- clarte, tu as un objet qui a une semantique claire et pas un sac fourre tout
- lisibilite, les objets exterieurs accedent a tout ce beau monde via des methodes au nom explicite et a la semantique claire (cf l'exemple du portefeuille d'action plus haut ou la premiere version est incomprehensible face a la deuxieme qui est clair comme de l'eau de roche)
- souplesse, tu peux aisement rajouter/supprimer des attributs sans peter tout ton code
- puissance tu peux maintenant tres aisement ajouter des methodes donnant un acces plus fin aux elements de la map
Et en plus t'as transforme une map qui est une structure relativement complexe en liste qui est achement plus simple a manipuler et serialiser (tous les lanagages n'ont pas de maps supportant un objet enmcle, par exemple, ou pas simplement).
Un livre de chevet indispensable a tout dev objet: domain driven design d'eric evans. Ca changera probablement la vision que les sceptiques ont de l'objet. Et bien evidemment le gang of four.
If you can find a host for me that has a friendly parrot, I will be very very glad. If you can find someone who has a friendly parrot I can visit with, that will be nice too.
Je fais toujours le même rêve, je nage dans la Seine et tout d'un coup j'avale un rat, alors je m'étouffe et je coule et au fond de la Seine y a des huîtres qui m'attrapent les chevilles, alors je vomis le rat sur les huitres, le rat attaque les huîtres, je remonte, je me cogne la tête contre une péniche et là je me réveille.
If you can find a host for me that has a friendly parrot, I will be very very glad. If you can find someone who has a friendly parrot I can visit with, that will be nice too.
"Bof, c'est juste une organisation différente du code. Je vous fait la même chose sans objets"
Bien sur que tu peux, les deux langages etant turing complet, tu peux faire strictement la meme chose, idem en assembleur ou en brain fuck.
La question pertinente est combien de temps et quel effort il aura fallu pour arriver au meme resultat? Pour quelle robustesse? Et ensuite, quelle souplesse as tu dans la maintenance et les evolutions qui ne manqueront pas d'arriver?
L'imperatif le plus courant, le C, apporte en plus son lot de problemes dus a son aspect bas niveau qui peut te peter a la gueule assez facilement.
L'objet apporte une facon de modeliser les problemes qui correspond mieux a ce qu'on voit dans le monde reel.
Un moteur est compose de pieces (donnees), un comportement (vroum vroum) et une interface publique (pour le champignon et le glouglou du moteur). Il encapsule un comportement pour le cacher du reste du monde qui n'en a cure (ton champignon marchera pareil que ca soit un diesel, un v12 ou un moteur de meule).
On a pas d'un cote une structure de donnees et de l'autre un set de logique, les deux sont lies.
Une modelisation plus proche du monde reel veut dire une modelisation plus simple pour l'humain qui, quoi qu'on en dise, vit dans le monde reel, est fortement influence par le monde reel et a un instinct de reptilien du monde reel. Ca veut dire une implementation plus simple par le reptilien sus cite, et une comprehension plus simple par ses pairs reptiliens.
If you can find a host for me that has a friendly parrot, I will be very very glad. If you can find someone who has a friendly parrot I can visit with, that will be nice too.
Il ya une bonne conception et une mauvaise conception.
C'est comme les chasseurs :)
Plus serieusement, oui, il ya de tres mauvais design, et de tres bon. Le probleme c'est qu'ils sont interchangeables en fonction du probleme a resoudre. Eric Evans donne comme exemple 2 cartes, une de chine assez funky d'il ya qq siecles (qui cite, pour un des pays limitrophes "ici vivent des gens de grande taille") et une mappemonde des plus banals.
Les 2 sont de tres bon designs.
Le premier est tres bon pour un chinois en chine. La deuxieme est mauvaise pour un chinois en chine parce qu'il ya beaucoup de bruit et manque d'information.
La deuxieme est excellente pour les navigateurs sur bateaux, la ou la premiere leur est totalement inutile.
C'est le truc de base a retenir: tout comme les 2 cartes precedentes repondent a un besoin precis, on ecrit une application qui repond a une problematique particuliere. Le design reflete cette problematique.
Il est vain de faire une solution soit disant generique qui repondra aussi a d'hypothetique problemes futures encore inconnus. Un bon design est un design adapte a la problematique traitee. Si la problematique change, on changera le design. Un excellent design permettra lui de modifier l'appli en question a moindre cout, mais a ce niveau la, c'est plus de la technique, ca devient un art :)
If you can find a host for me that has a friendly parrot, I will be very very glad. If you can find someone who has a friendly parrot I can visit with, that will be nice too.
De ce que je me rappelle de mes cours d'objet a la fac, en gros, on a t'apprends "un objet, c'est comme un struct c, sauf qu'a la place de definir les function a part, tu les mets a cote de ta struct. Ah, et pis on peut heriter en objet, ca c'est bien." Du coup les etudiants apprennent a heriter comme des porcs et paf. Ca aide pas :)
Un des gros problemes c'est que la plupart des devs ne savent pas encapsuler. Ca se limite generalement a ce qu'on leur a appris a l'ecole, a savoir "rendre les champs prives et mettre des getters/setter publics dessus".
Je passe mon temps a batailler pour convaincre qu'un code du genre:
Pourquoi? Tout passe par bar. La logique appartient a bar. Ce code est un pur code c. Les objets sont des structs et la methode est une function C qui manipule ces structs. Et pour beaucoup, ca c'est du code objet (certains diraient meme de qualite).
Les concepts de base d'encapsulation genre un root aggregate qui s'occupe d'implementer les regles de manipulations d'une "liste" plutot que d'exposer au monde entier les regles de manipulation de la dite liste sont inconnus de beaucoup. Et pourtant, ca doit etre le pattern le plus utile en development "entreprise". C'est extremement rare de devoir manipuler directement une liste qui n'appartient pas a l'objet courant, et pourtant je vois ca pourtant dans le milieu.
Certains me regardent meme avec des yeux tout ronds quand je suggere que les maps sont le demons et totalement injustifiees dans 90% des cas ou elles sont utilisees et devraient etre remplacees par un root aggregate d'objets haut niveau, bien plus puissant, souple et fiable.
L'autre effet de bord du manque d'encapsulation c'est que le code devient illisible et masque toute la logique metier. 99 things every developer should know en montre un exemple du genre:
Un bug dans la premiere version est dur a detecter a la relecture alors que ca va etre evident dans le deuxieme. Pourquoi? Absence d'encapsulation, la logique de visibilite d'un portfolio est extraite de l'objet et repandue partout dans le code, ce qui a pour effet de bord de ne pas pouvoir utliiser le langage du domaine dans le code. La deuxieme version se lit comme une phrase naturelle ('fin presque...) et ca saybien.
Mais ca va plus loin que ca.
La delegation est laissee de cote face a l'heritage, et ca c'est mal. Bon, a leur decharge, Java supporte mal la delegation.
Et pire encore, l'heritage est sur utilise, pour de mauvaise raisons (les deux plus courantes: heritage pour heriter de donnees au lieu de composer, et heritage simplement pour differencier 2 types d'objets tres proches mais legerement differents). J'ai bosse sur un projet recemment avec une hierarchie de 7 niveaux. L'effet de bord le plus visible c'est qu'on devait utiliser des generics comme des gorets pour s'en sortir, et tout le monde sait que les generics java sont tres tres tres mauvais. Un peu de rafactoring et paf, ca tombe a 2 niveaux, plus de generics, un bon millier de lignes de code purement et simplement supprimees du source. Et accessoirement, un code achement plus simple a lire.
Les pseudos pattenrs a la con J2EE de l'eopque doree du debut des annees 2000 ont fait beaucoup de mal. Surtout quand tout ce dont on avait besoin en fait, c'etait de l'inversion of control. Une fois spring amene dans un projet, n'importe quel projet J2EE se limite a qq patterns usuels sorti du Gang of four et roule ma poule.
MVC a ete particulierement mal interprete dans le monde java, ou la plupart des devs l'ont compris comme "ma vue, c'est ma jsp, mon modele c'est un objet avec attributs et sans aucune methode, et mon controller c'est un foutoir sans nom ou je met des "services" qui implementent la logique metier".
Ca s'appelle l'anemic object anti pattern, c'est un anti pattern, et le resultat direct c'est qu'on fait de la programmation imperative avec des C structs et pas de l'objet.
Alors, certes, le prototypage apporte une certaine souplesse, qui est appreciable dans certains cas, nefaste dans d'autres. Mais ca change pas le fond du probleme, le mec qui ecrit le code ne saura probablement pas s'en servir. Donne du javascript a n'importe quel dev Java de base, il te pondera de la merde pareille.
If you can find a host for me that has a friendly parrot, I will be very very glad. If you can find someone who has a friendly parrot I can visit with, that will be nice too.
Et attends, bientot on a les bien pensants du libre partage qui vont venir t'expliquer que le bit coin, c'est dematerialise, que la rarete est organisee et que c'est un devoir citoyen que de desobeir et les copier soit meme comme des grands, que ya pas de raison, hein, ca appartient a l'humanite, et que comme ils font partie de l'humanite, ca leur appartient a eux.
Non mais sans blague.
If you can find a host for me that has a friendly parrot, I will be very very glad. If you can find someone who has a friendly parrot I can visit with, that will be nice too.
Il a visiblement rate un virage a la fin des annees 80 et depuis a l'air completement deconnecte des realites d'ingenierie.
La genese de xemacs regorge d'anecdotes croustillantes sur la difficulte de travailler avec l'energumene et sur ses visions techniques farfelues (ou le mec arrive a argumente contre des evenements structures pour les evenements clavier, c'est baleze quand meme): http://www.jwz.org/doc/lemacs.html
De meme, egcs a forke au debut des annees 90 pour incompatibilite avec le bonhomme. Apres avoir merge avec egcs, le technical steering comittee de gcc a declare preferer eviter d'aborder la moindre question technique quand rms est present et repousser a une prochaine session ou il est absent, la raison etant qu'il va se braquer, faire une decision a la con et ensuite tout bloquer pour des mois, voire des annees.
Dans le fond, c'est pas etonnant, sa mentalite extremiste et "je campe sur mes positions quoi qu'il arrive" est fondamentalement incompatible avec celle requise par un ingenieur dans un domaine aussi dynamique que l'informatique.
If you can find a host for me that has a friendly parrot, I will be very very glad. If you can find someone who has a friendly parrot I can visit with, that will be nice too.
Des fois il marche. Et la l'utilisteur se rend compte que ca a ete concu pour une utilisation a la souris, avec moultes rollover, des barres de scroll qui ne reagissent pas aux evenement drag, des elements clickables de 6x6px ou il faut taper pile poile dessus sinon ca marche et tout et tout.
Mais promis, adobe travaille dessus, et la prochaine release, c'est bon, ca marchera. Patience, ca arrive bientot. Bientot.
Et encore je suis gentil, je demande meme pas comment ca reagit a un pinch/zoom sur la page.
If you can find a host for me that has a friendly parrot, I will be very very glad. If you can find someone who has a friendly parrot I can visit with, that will be nice too.
Ca se discute. Vu les perfs lamentables de flash 10.2, le fait qu'il arrive a peine a lire une video corrrectement, que le moindre contenu un tant soit peu interactif soit ne marche pas, soit fait planter le navigateur, le tout en sucant allegrement la batterie.
Il reste quoi? Les pubs!! Wouhou! Ca en vaut la chandelle effectivement.
En pratique, les utilisateurs rencontrent assez peu de flash, les sites webs ont compris qu'il fallait pas leur servir de contenu boiteux ;-)
If you can find a host for me that has a friendly parrot, I will be very very glad. If you can find someone who has a friendly parrot I can visit with, that will be nice too.
Tout a fait, preserver l'hegemonie de flash, ce qui par effet de bord:
- permet a android de se demarquer d'ios en proposant flash (vu les implems de flash sur arm, je suis pas sur que la demarcation soit positive cela dit).
- permet a google de continuer a servir ses pubs flash en ovelay de leur videos youtube.
If you can find a host for me that has a friendly parrot, I will be very very glad. If you can find someone who has a friendly parrot I can visit with, that will be nice too.
C'est pas ca le pb, Plutot que google considere comme du bruit les comparateurs et refuse de les indexer. Sauf le sien. Ca c'est deloyal.
If you can find a host for me that has a friendly parrot, I will be very very glad. If you can find someone who has a friendly parrot I can visit with, that will be nice too.
Heu, non, justement, c'est encore plus le bordel quand il faut gerer des envois physique.
Un autre paire de manches veut dire que c'est dur, justement.
If you can find a host for me that has a friendly parrot, I will be very very glad. If you can find someone who has a friendly parrot I can visit with, that will be nice too.
If you can find a host for me that has a friendly parrot, I will be very very glad. If you can find someone who has a friendly parrot I can visit with, that will be nice too.
Les deux ne sont pas mutuellement exclusif, on peut avoir un laptop pour faire du travail serieux et un ipad pour le reste, hein...
Sinon, je parlais de l'usage indique plus haut (mail, internet, musique, video) en precisant que si c'est effectivement tout ce qu'il veut faire, l'ipad est un candidat.
If you can find a host for me that has a friendly parrot, I will be very very glad. If you can find someone who has a friendly parrot I can visit with, that will be nice too.
Tres serieux oui, je fais ca tous les jours depuis plus d'un an, et j'en suis ravi, si tu savais le soulagement que c'est de plus avoir de clavier physique, de se demander si la batterie va tenir la matinee, de plus avoir de fil a la patte.
Et 20 millions de personnes semblent etre de mon avis, faut croire que je suis pas le seul. Alors, oui, je sais c'est un effet de mode, tout ca, ca sert a rien, c'est le marketing, la hype, tout ca. On en reparle dans un an, quand 40 a 50 millions de "couillons" se seront fait avoir par apple, d'accord?
Farmville ne tournera pas, mais comme angry birds ne tourne pas dans un player flash, au final, ca revient au meme, tu crois pas? C'est pas comme si ios etait en manque de jeux de qualite.
Les videos n'ont pas necessairement besoin d'etre stockee sur l'ipad sinon, elles peuvent etre en ligne ou sur ton reseau local, meme si 64go me permet de stocker ma librairie consequente de musique et d'avoir de la place restante pour une gross vingtaine de films.
Quand a l'aspect trollesque, c'est pas ma faute si l'ipad seul a depasse linux en part de marches en tout juste 9 mois, hein...
If you can find a host for me that has a friendly parrot, I will be very very glad. If you can find someone who has a friendly parrot I can visit with, that will be nice too.
Non il dit qu'il a pas le droit de le faire de lui meme, qu'il peut le faire en tant que service payant et sous entend que vu le bordel a organiser, ca va pas couter 1 euros au client.
If you can find a host for me that has a friendly parrot, I will be very very glad. If you can find someone who has a friendly parrot I can visit with, that will be nice too.
Garder les disquettes et le ps2, on peut pas vraiment parler de progres non plus, hein...
If you can find a host for me that has a friendly parrot, I will be very very glad. If you can find someone who has a friendly parrot I can visit with, that will be nice too.
Desole je me suis rendu compte que j'avais poste sans finir mon message.
Tous les telephones que j'ai eu en 10 ans utilisaient des ports standards. Mais jamais le meme, meme au sein d'une meme marque. Au final, c'est encore plus le bordel. Tellement le bordel qu'on parle de reglementation europeene a ce niveau.
Mais c'est standard, c'est tout ce qui compte, c'est ca? Le resultat final, on s'en fout tant que les apparences sont sauves...
En face, 3 ipod et un ipad, avec le meme cable depuis 6 ans.
If you can find a host for me that has a friendly parrot, I will be very very glad. If you can find someone who has a friendly parrot I can visit with, that will be nice too.
[^] # Re: omme souvent, les gens éteignent leur cerveau en allumant leur ordinateur,
Posté par pasScott pasForstall . En réponse au journal Toujours confiance ?. Évalué à 4.
Ah ben ca tombe bien, t'iras te plaindre au meme endroit si Amazon deconne, c'est beau non?
If you can find a host for me that has a friendly parrot, I will be very very glad. If you can find someone who has a friendly parrot I can visit with, that will be nice too.
[^] # Re: Quand on tends déjà les fesses, c'est pas dramatique d'aller un peu plus loin
Posté par pasScott pasForstall . En réponse au journal Toujours confiance ?. Évalué à 1.
Certes, mais vu la sante financiaires des organisme de credit, la fraude reste minimale. C'est bien la preuve que le systeme marche, non?
Joue a quoi? A monter des arnaques? Desole non, j'ai fait pas mal de conneries, mais rien de debile.
On commence a sortir du simple "suffit de piquer un mot de passe et de siphonner un compte" la non?
L'immateriel pose encore moins de problemes vu qu'il suffit de revoquer le contenu et rendre les sous a leur proprietaire. Doit bien etre la seule utilisation legitime des drm tiens.
Probablement parce qu'aucun organisme de credit ne les laisserait faire si c'etait pas le cas ;-)
L'organisme de credit/la banque est en premiere ligne quand il faut rembourser suite a une fraude, on peut leur reprocher beaucoup de choses, mais pas de faire gaffe a leur sous a eux.
Ah ben avec ce genre de raisonnement on va aller loin!
Note que meme avec un OTP, tu sais toujours pas d'ou vient la fraude, juste que l'attaquant a reussi a un generer un valide...
If you can find a host for me that has a friendly parrot, I will be very very glad. If you can find someone who has a friendly parrot I can visit with, that will be nice too.
[^] # Re: Quand on tends déjà les fesses, c'est pas dramatique d'aller un peu plus loin
Posté par pasScott pasForstall . En réponse au journal Toujours confiance ?. Évalué à 2.
De deux cas l'un.
1. c'est une maladresse legitime de la part d'un magasin legitime. En gros, ya robert qu'a deconne. Tu te plains aupres de ton organisme de credit, qui tout d'abord te rembourse et ensuite se retourne vers le magasin en question et lui tape tres tres tres fort sur les doigts.
En gros le magasin se prends des penalites et apres un (faible) nombre d'erreur de ce genre se fait retirer son agrement. Ca veut dire "plus de carte bleu" donc ils peuvent fermer et vendre le mobilier pour payer les creanciers. Et robert va se faire suicider au fond d'un parking.
Crois moi que ton numero de CB ils y font tres tres attention, c'est ce qui leur permet de vivre.
2. c'est une arnaque en bonne et due forme, le mec va pas se faire chier a stocker un numero de cb, il va se servir et se barrer.
Et un jour se faire gauler et passer 25 ans en pyjama orange sur une plage de Cuba.
Le systeme marche sur la confiance, croit moi que ceux qui ne sont pas fiables se font vite ejecter du systeme.
L'attaquant n'aura pas le numero de la carte qui n'est visible de personne excepte le systeme de paiement. Au mieux, il peut acheter une playstation 3 chez amazon et te donner l'adresse ou aller l'arreter. Supayr!
Reste le probleme de l'attaque profonde ou l'attaquant arriver a casser l'encryption des numeros. Bon.
10 ans d'amazon, des centaines de millions de cartes de credit, combien de problemes a ce jour?
4 ans d'app store, 100+ millions de cartes de credit, combien de problemes a ce jour?
Dans le cas de sony, ils ne savent pas si les numeros se sont fait piquer. Ca inspire pas confiance, c'est sur, mais peut etre attendre la conclusion avant de crier haro sur le baudet?
Et sinon, le thai a 3 block de chez moi a mon numero de carte de credit, ca m'evite de lui repeter 16 chiffres + date regulierement. Et s'il se sert? Deja il se sert pas sans ma signature, et meme s'il le fait cf 1, je me fais rembourser, il ferme son resto et part decouvrir les joies du ramassage de savonnette a Chino (offense federale plutot grave)
If you can find a host for me that has a friendly parrot, I will be very very glad. If you can find someone who has a friendly parrot I can visit with, that will be nice too.
[^] # Re: Que pensez vous de l'e-carte bleue ?
Posté par pasScott pasForstall . En réponse au journal Toujours confiance ?. Évalué à 0.
T'as ete verifie que le logiciel des DAB et des terminaux de paiements sont surs? Ca t'empeche pas de les utiliser pourtant...
Allez, c'est vite vu, jettes moi vite cette carte bleu que je ne saurais voir.
If you can find a host for me that has a friendly parrot, I will be very very glad. If you can find someone who has a friendly parrot I can visit with, that will be nice too.
[^] # Re: Héritage...
Posté par pasScott pasForstall . En réponse au journal Le problème de la POO pratiquée par des étudiants. Évalué à 0.
Et c'est quoi les utilisations saines?
En 10 ans de dev intensif, jamais je ne me suis dit "pinaise, l'heritage multiple simplifierais mon probleme".
If you can find a host for me that has a friendly parrot, I will be very very glad. If you can find someone who has a friendly parrot I can visit with, that will be nice too.
[^] # Re: Plusieurs
Posté par pasScott pasForstall . En réponse au journal Le problème de la POO pratiquée par des étudiants. Évalué à 2.
A moins que ta list contienne 1 000 000 d'elements, ca va pas faire une grosse difference. Ca va potentiellement meme etre plus lent de calculer ton hash que d'iterer 100 elements d'un tableau.
Tout depend de ce que tu manipules, mais la performance a pas forcement un gros impact sur tes performances, si ca en a un. Par contre t'as un tres gros gain sur la qualite de ton code.
If you can find a host for me that has a friendly parrot, I will be very very glad. If you can find someone who has a friendly parrot I can visit with, that will be nice too.
[^] # Re: Plusieurs
Posté par pasScott pasForstall . En réponse au journal Le problème de la POO pratiquée par des étudiants. Évalué à 3.
Non, c'est pas ca. Le root aggregate se concentre uniquement sur la manipulation d'un ensemble clairement defini, pas sur tout et n'importe quoi. Il faut aussi que l'ensemble ait une cohesion et qu'il existe des regles de manipulation dudit ensemble, sinon ca sert pas a grand chose a part rajouter une classe pour rien.
C'est un concept qu'on retrouve dans la vraie vie. Un ensemble se manipule plus proprement et simplement quand tout se fait un point d'entree designe.
Une equipe est mieux geree par un chef d'equipe plutot que d'avoir des gens qui prennent des ressources de leur cote.
Un stock en magasin se doit d'etre gere par quelqu'un sinon ca devient le bordel. J'ai la flemme de chercher mais on peut trouver d'autres exemples.
If you can find a host for me that has a friendly parrot, I will be very very glad. If you can find someone who has a friendly parrot I can visit with, that will be nice too.
[^] # Re: Plusieurs
Posté par pasScott pasForstall . En réponse au journal Le problème de la POO pratiquée par des étudiants. Évalué à 3.
L'idee c'est qu'un ensemble d'objets est lie ensemble par le root aggregate, qui est responsable de fournir des methodes d'acces aux dits objets et maintenir la cohesion du tout en forcant toute manipulation de l'ensemble a passer par lui. T'as un point central d'acces a ces objets, ce qui concentre la logique au bon endroit et permet d'implementer la logique metier proprement.
T'as bien evidemment toujours le droit de recuperer un seul objet de l'ensemble et le manipuler comme tu veux, mais tu dois le recuperer via le root. Souvent t'as un backpointer vers le parent, qui te permet d'implementer a moindre cout des gardes fous ou d'acceder aux freres de l'objet en question.
L'interet immediat c'est que ca te garantit que ton graphe d'objet est toujours consistant (au sens anglais, le francais me vient pas a l'esprit, desole), l'autre interet c'est la lisibilite du code, sans compter les trucs habituels, encapsulation donc refactoring facilite, reutilisablite du code etc.
Pour les maps le gros problemes c'est que c'est un gros sac offrant tres peu de souplesse niveau manipulation, sans compter que ca retire beaucoup de semantique.
Transforme ca en une liste d'objets liant la cle a la valeur (ce qui te permet en cado bonux de rajouter de la logique sur cette association), le tout lie ensemble par un root aggregate, tu gagnes enormement:
- clarte, tu as un objet qui a une semantique claire et pas un sac fourre tout
- lisibilite, les objets exterieurs accedent a tout ce beau monde via des methodes au nom explicite et a la semantique claire (cf l'exemple du portefeuille d'action plus haut ou la premiere version est incomprehensible face a la deuxieme qui est clair comme de l'eau de roche)
- souplesse, tu peux aisement rajouter/supprimer des attributs sans peter tout ton code
- puissance tu peux maintenant tres aisement ajouter des methodes donnant un acces plus fin aux elements de la map
Et en plus t'as transforme une map qui est une structure relativement complexe en liste qui est achement plus simple a manipuler et serialiser (tous les lanagages n'ont pas de maps supportant un objet enmcle, par exemple, ou pas simplement).
Un livre de chevet indispensable a tout dev objet: domain driven design d'eric evans. Ca changera probablement la vision que les sceptiques ont de l'objet. Et bien evidemment le gang of four.
If you can find a host for me that has a friendly parrot, I will be very very glad. If you can find someone who has a friendly parrot I can visit with, that will be nice too.
# Moi
Posté par pasScott pasForstall . En réponse au journal En rêve, je me suis logué en root. Évalué à 3.
Je fais toujours le même rêve, je nage dans la Seine et tout d'un coup j'avale un rat, alors je m'étouffe et je coule et au fond de la Seine y a des huîtres qui m'attrapent les chevilles, alors je vomis le rat sur les huitres, le rat attaque les huîtres, je remonte, je me cogne la tête contre une péniche et là je me réveille.
If you can find a host for me that has a friendly parrot, I will be very very glad. If you can find someone who has a friendly parrot I can visit with, that will be nice too.
[^] # Re: Quelqu'un dans l'assemblée saurait "vendre" le concept de POO ?
Posté par pasScott pasForstall . En réponse au journal Le problème de la POO pratiquée par des étudiants. Évalué à 9.
Bien sur que tu peux, les deux langages etant turing complet, tu peux faire strictement la meme chose, idem en assembleur ou en brain fuck.
La question pertinente est combien de temps et quel effort il aura fallu pour arriver au meme resultat? Pour quelle robustesse? Et ensuite, quelle souplesse as tu dans la maintenance et les evolutions qui ne manqueront pas d'arriver?
L'imperatif le plus courant, le C, apporte en plus son lot de problemes dus a son aspect bas niveau qui peut te peter a la gueule assez facilement.
L'objet apporte une facon de modeliser les problemes qui correspond mieux a ce qu'on voit dans le monde reel.
Un moteur est compose de pieces (donnees), un comportement (vroum vroum) et une interface publique (pour le champignon et le glouglou du moteur). Il encapsule un comportement pour le cacher du reste du monde qui n'en a cure (ton champignon marchera pareil que ca soit un diesel, un v12 ou un moteur de meule).
On a pas d'un cote une structure de donnees et de l'autre un set de logique, les deux sont lies.
Une modelisation plus proche du monde reel veut dire une modelisation plus simple pour l'humain qui, quoi qu'on en dise, vit dans le monde reel, est fortement influence par le monde reel et a un instinct de reptilien du monde reel. Ca veut dire une implementation plus simple par le reptilien sus cite, et une comprehension plus simple par ses pairs reptiliens.
If you can find a host for me that has a friendly parrot, I will be very very glad. If you can find someone who has a friendly parrot I can visit with, that will be nice too.
[^] # Re: Rigidité
Posté par pasScott pasForstall . En réponse au journal Le problème de la POO pratiquée par des étudiants. Évalué à 5.
Il ya une bonne conception et une mauvaise conception.
C'est comme les chasseurs :)
Plus serieusement, oui, il ya de tres mauvais design, et de tres bon. Le probleme c'est qu'ils sont interchangeables en fonction du probleme a resoudre. Eric Evans donne comme exemple 2 cartes, une de chine assez funky d'il ya qq siecles (qui cite, pour un des pays limitrophes "ici vivent des gens de grande taille") et une mappemonde des plus banals.
Les 2 sont de tres bon designs.
Le premier est tres bon pour un chinois en chine. La deuxieme est mauvaise pour un chinois en chine parce qu'il ya beaucoup de bruit et manque d'information.
La deuxieme est excellente pour les navigateurs sur bateaux, la ou la premiere leur est totalement inutile.
C'est le truc de base a retenir: tout comme les 2 cartes precedentes repondent a un besoin precis, on ecrit une application qui repond a une problematique particuliere. Le design reflete cette problematique.
Il est vain de faire une solution soit disant generique qui repondra aussi a d'hypothetique problemes futures encore inconnus. Un bon design est un design adapte a la problematique traitee. Si la problematique change, on changera le design. Un excellent design permettra lui de modifier l'appli en question a moindre cout, mais a ce niveau la, c'est plus de la technique, ca devient un art :)
If you can find a host for me that has a friendly parrot, I will be very very glad. If you can find someone who has a friendly parrot I can visit with, that will be nice too.
# Plusieurs
Posté par pasScott pasForstall . En réponse au journal Le problème de la POO pratiquée par des étudiants. Évalué à 10.
De ce que je me rappelle de mes cours d'objet a la fac, en gros, on a t'apprends "un objet, c'est comme un struct c, sauf qu'a la place de definir les function a part, tu les mets a cote de ta struct. Ah, et pis on peut heriter en objet, ca c'est bien." Du coup les etudiants apprennent a heriter comme des porcs et paf. Ca aide pas :)
Un des gros problemes c'est que la plupart des devs ne savent pas encapsuler. Ca se limite generalement a ce qu'on leur a appris a l'ecole, a savoir "rendre les champs prives et mettre des getters/setter publics dessus".
Je passe mon temps a batailler pour convaincre qu'un code du genre:
Pourquoi? Tout passe par bar. La logique appartient a bar. Ce code est un pur code c. Les objets sont des structs et la methode est une function C qui manipule ces structs. Et pour beaucoup, ca c'est du code objet (certains diraient meme de qualite).
Les concepts de base d'encapsulation genre un root aggregate qui s'occupe d'implementer les regles de manipulations d'une "liste" plutot que d'exposer au monde entier les regles de manipulation de la dite liste sont inconnus de beaucoup. Et pourtant, ca doit etre le pattern le plus utile en development "entreprise". C'est extremement rare de devoir manipuler directement une liste qui n'appartient pas a l'objet courant, et pourtant je vois ca pourtant dans le milieu.
Certains me regardent meme avec des yeux tout ronds quand je suggere que les maps sont le demons et totalement injustifiees dans 90% des cas ou elles sont utilisees et devraient etre remplacees par un root aggregate d'objets haut niveau, bien plus puissant, souple et fiable.
L'autre effet de bord du manque d'encapsulation c'est que le code devient illisible et masque toute la logique metier. 99 things every developer should know en montre un exemple du genre:
la ou ca devrait etre un :
Un bug dans la premiere version est dur a detecter a la relecture alors que ca va etre evident dans le deuxieme. Pourquoi? Absence d'encapsulation, la logique de visibilite d'un portfolio est extraite de l'objet et repandue partout dans le code, ce qui a pour effet de bord de ne pas pouvoir utliiser le langage du domaine dans le code. La deuxieme version se lit comme une phrase naturelle ('fin presque...) et ca saybien.
Mais ca va plus loin que ca.
La delegation est laissee de cote face a l'heritage, et ca c'est mal. Bon, a leur decharge, Java supporte mal la delegation.
Et pire encore, l'heritage est sur utilise, pour de mauvaise raisons (les deux plus courantes: heritage pour heriter de donnees au lieu de composer, et heritage simplement pour differencier 2 types d'objets tres proches mais legerement differents). J'ai bosse sur un projet recemment avec une hierarchie de 7 niveaux. L'effet de bord le plus visible c'est qu'on devait utiliser des generics comme des gorets pour s'en sortir, et tout le monde sait que les generics java sont tres tres tres mauvais. Un peu de rafactoring et paf, ca tombe a 2 niveaux, plus de generics, un bon millier de lignes de code purement et simplement supprimees du source. Et accessoirement, un code achement plus simple a lire.
Les pseudos pattenrs a la con J2EE de l'eopque doree du debut des annees 2000 ont fait beaucoup de mal. Surtout quand tout ce dont on avait besoin en fait, c'etait de l'inversion of control. Une fois spring amene dans un projet, n'importe quel projet J2EE se limite a qq patterns usuels sorti du Gang of four et roule ma poule.
MVC a ete particulierement mal interprete dans le monde java, ou la plupart des devs l'ont compris comme "ma vue, c'est ma jsp, mon modele c'est un objet avec attributs et sans aucune methode, et mon controller c'est un foutoir sans nom ou je met des "services" qui implementent la logique metier".
Ca s'appelle l'anemic object anti pattern, c'est un anti pattern, et le resultat direct c'est qu'on fait de la programmation imperative avec des C structs et pas de l'objet.
Alors, certes, le prototypage apporte une certaine souplesse, qui est appreciable dans certains cas, nefaste dans d'autres. Mais ca change pas le fond du probleme, le mec qui ecrit le code ne saura probablement pas s'en servir. Donne du javascript a n'importe quel dev Java de base, il te pondera de la merde pareille.
If you can find a host for me that has a friendly parrot, I will be very very glad. If you can find someone who has a friendly parrot I can visit with, that will be nice too.
[^] # Re: Génération de Bitcoins
Posté par pasScott pasForstall . En réponse au journal Le bitcoin atteint la parité avec l'euro. Évalué à -10.
Et attends, bientot on a les bien pensants du libre partage qui vont venir t'expliquer que le bit coin, c'est dematerialise, que la rarete est organisee et que c'est un devoir citoyen que de desobeir et les copier soit meme comme des grands, que ya pas de raison, hein, ca appartient a l'humanite, et que comme ils font partie de l'humanite, ca leur appartient a eux.
Non mais sans blague.
If you can find a host for me that has a friendly parrot, I will be very very glad. If you can find someone who has a friendly parrot I can visit with, that will be nice too.
[^] # Re: Stallman, retourne à ton code !
Posté par pasScott pasForstall . En réponse au journal Lettre ouverte à RMS. Évalué à 2.
Il a visiblement rate un virage a la fin des annees 80 et depuis a l'air completement deconnecte des realites d'ingenierie.
La genese de xemacs regorge d'anecdotes croustillantes sur la difficulte de travailler avec l'energumene et sur ses visions techniques farfelues (ou le mec arrive a argumente contre des evenements structures pour les evenements clavier, c'est baleze quand meme): http://www.jwz.org/doc/lemacs.html
De meme, egcs a forke au debut des annees 90 pour incompatibilite avec le bonhomme. Apres avoir merge avec egcs, le technical steering comittee de gcc a declare preferer eviter d'aborder la moindre question technique quand rms est present et repousser a une prochaine session ou il est absent, la raison etant qu'il va se braquer, faire une decision a la con et ensuite tout bloquer pour des mois, voire des annees.
Dans le fond, c'est pas etonnant, sa mentalite extremiste et "je campe sur mes positions quoi qu'il arrive" est fondamentalement incompatible avec celle requise par un ingenieur dans un domaine aussi dynamique que l'informatique.
If you can find a host for me that has a friendly parrot, I will be very very glad. If you can find someone who has a friendly parrot I can visit with, that will be nice too.
[^] # Re: Conflit d'intérêt
Posté par pasScott pasForstall . En réponse au journal Papier technique sur VP8. Évalué à -2.
Pour le contenu interqctif, j'ai ete mechant.
Des fois il marche. Et la l'utilisteur se rend compte que ca a ete concu pour une utilisation a la souris, avec moultes rollover, des barres de scroll qui ne reagissent pas aux evenement drag, des elements clickables de 6x6px ou il faut taper pile poile dessus sinon ca marche et tout et tout.
Mais promis, adobe travaille dessus, et la prochaine release, c'est bon, ca marchera. Patience, ca arrive bientot. Bientot.
Et encore je suis gentil, je demande meme pas comment ca reagit a un pinch/zoom sur la page.
If you can find a host for me that has a friendly parrot, I will be very very glad. If you can find someone who has a friendly parrot I can visit with, that will be nice too.
[^] # Re: Conflit d'intérêt
Posté par pasScott pasForstall . En réponse au journal Papier technique sur VP8. Évalué à -2.
Ca se discute. Vu les perfs lamentables de flash 10.2, le fait qu'il arrive a peine a lire une video corrrectement, que le moindre contenu un tant soit peu interactif soit ne marche pas, soit fait planter le navigateur, le tout en sucant allegrement la batterie.
Il reste quoi? Les pubs!! Wouhou! Ca en vaut la chandelle effectivement.
En pratique, les utilisateurs rencontrent assez peu de flash, les sites webs ont compris qu'il fallait pas leur servir de contenu boiteux ;-)
If you can find a host for me that has a friendly parrot, I will be very very glad. If you can find someone who has a friendly parrot I can visit with, that will be nice too.
[^] # Re: Conflit d'intérêt
Posté par pasScott pasForstall . En réponse au journal Papier technique sur VP8. Évalué à -2.
Tout a fait, preserver l'hegemonie de flash, ce qui par effet de bord:
- permet a android de se demarquer d'ios en proposant flash (vu les implems de flash sur arm, je suis pas sur que la demarcation soit positive cela dit).
- permet a google de continuer a servir ses pubs flash en ovelay de leur videos youtube.
If you can find a host for me that has a friendly parrot, I will be very very glad. If you can find someone who has a friendly parrot I can visit with, that will be nice too.
[^] # Re: Panda Ranking
Posté par pasScott pasForstall . En réponse au journal Google : Panda, nouvel algorithme d’indexation. Évalué à -6.
C'est pas ca le pb, Plutot que google considere comme du bruit les comparateurs et refuse de les indexer. Sauf le sien. Ca c'est deloyal.
If you can find a host for me that has a friendly parrot, I will be very very glad. If you can find someone who has a friendly parrot I can visit with, that will be nice too.
[^] # Re: Loi naturelle
Posté par pasScott pasForstall . En réponse au journal Extension de la protection des œuvres musicales. Évalué à -3.
Heu, non, justement, c'est encore plus le bordel quand il faut gerer des envois physique.
Un autre paire de manches veut dire que c'est dur, justement.
If you can find a host for me that has a friendly parrot, I will be very very glad. If you can find someone who has a friendly parrot I can visit with, that will be nice too.
[^] # Re: Magnifique !
Posté par pasScott pasForstall . En réponse au journal Rue du Commerce et la vente liée. Évalué à -2.
Ouaip.
T'as teste imovie pour ipad?
If you can find a host for me that has a friendly parrot, I will be very very glad. If you can find someone who has a friendly parrot I can visit with, that will be nice too.
[^] # Re: Magnifique !
Posté par pasScott pasForstall . En réponse au journal Rue du Commerce et la vente liée. Évalué à -3.
Les deux ne sont pas mutuellement exclusif, on peut avoir un laptop pour faire du travail serieux et un ipad pour le reste, hein...
Sinon, je parlais de l'usage indique plus haut (mail, internet, musique, video) en precisant que si c'est effectivement tout ce qu'il veut faire, l'ipad est un candidat.
If you can find a host for me that has a friendly parrot, I will be very very glad. If you can find someone who has a friendly parrot I can visit with, that will be nice too.
[^] # Re: Magnifique !
Posté par pasScott pasForstall . En réponse au journal Rue du Commerce et la vente liée. Évalué à -5.
Tres serieux oui, je fais ca tous les jours depuis plus d'un an, et j'en suis ravi, si tu savais le soulagement que c'est de plus avoir de clavier physique, de se demander si la batterie va tenir la matinee, de plus avoir de fil a la patte.
Et 20 millions de personnes semblent etre de mon avis, faut croire que je suis pas le seul. Alors, oui, je sais c'est un effet de mode, tout ca, ca sert a rien, c'est le marketing, la hype, tout ca. On en reparle dans un an, quand 40 a 50 millions de "couillons" se seront fait avoir par apple, d'accord?
Farmville ne tournera pas, mais comme angry birds ne tourne pas dans un player flash, au final, ca revient au meme, tu crois pas? C'est pas comme si ios etait en manque de jeux de qualite.
Les videos n'ont pas necessairement besoin d'etre stockee sur l'ipad sinon, elles peuvent etre en ligne ou sur ton reseau local, meme si 64go me permet de stocker ma librairie consequente de musique et d'avoir de la place restante pour une gross vingtaine de films.
Quand a l'aspect trollesque, c'est pas ma faute si l'ipad seul a depasse linux en part de marches en tout juste 9 mois, hein...
If you can find a host for me that has a friendly parrot, I will be very very glad. If you can find someone who has a friendly parrot I can visit with, that will be nice too.
[^] # Re: Réponse à côté de la plaque
Posté par pasScott pasForstall . En réponse au journal Rue du Commerce et la vente liée. Évalué à -4.
Non il dit qu'il a pas le droit de le faire de lui meme, qu'il peut le faire en tant que service payant et sous entend que vu le bordel a organiser, ca va pas couter 1 euros au client.
If you can find a host for me that has a friendly parrot, I will be very very glad. If you can find someone who has a friendly parrot I can visit with, that will be nice too.
[^] # Re: Magnifique !
Posté par pasScott pasForstall . En réponse au journal Rue du Commerce et la vente liée. Évalué à -3.
Garder les disquettes et le ps2, on peut pas vraiment parler de progres non plus, hein...
If you can find a host for me that has a friendly parrot, I will be very very glad. If you can find someone who has a friendly parrot I can visit with, that will be nice too.
[^] # Re: Magnifique !
Posté par pasScott pasForstall . En réponse au journal Rue du Commerce et la vente liée. Évalué à -6.
Desole je me suis rendu compte que j'avais poste sans finir mon message.
Tous les telephones que j'ai eu en 10 ans utilisaient des ports standards. Mais jamais le meme, meme au sein d'une meme marque. Au final, c'est encore plus le bordel. Tellement le bordel qu'on parle de reglementation europeene a ce niveau.
Mais c'est standard, c'est tout ce qui compte, c'est ca? Le resultat final, on s'en fout tant que les apparences sont sauves...
En face, 3 ipod et un ipad, avec le meme cable depuis 6 ans.
If you can find a host for me that has a friendly parrot, I will be very very glad. If you can find someone who has a friendly parrot I can visit with, that will be nice too.