mageekblog - Réfléxions - CommentairesLe blog personnel de Frédéric Hardy. Au menu, PHP, agilité, FreeBSD, cuisine et photographies.2021-12-02T08:20:54+01:00Frédéric Hardyurn:md5:26874ca5b8cd4cac8d08b0e68e64f63aDotclearÀ propos de l’USB-C des nouveaux MacBook Pro - Mickaël Andrieuurn:md5:2b6829fcb3f553869c270cd70882e71d2016-11-16T13:25:26+01:002016-11-16T13:25:26+01:00Mickaël Andrieu<p>Salut,</p>
<p>j'accepte tout ce que tu dis, hormis la conclusion que tu en tires:</p>
<p>retirer un (X?) port, ce n'est pas une innovation.</p>
<p>L'innovation actuellement, c'est ce que propose Microsoft: de nouveaux usages de son ordinateur, combinant hardware et soft: l'appropriation de la 3D et de la VR par monsieur tout le monde dans un monde de plus en plus (inter) connecté.</p>
<p>L'innovation encore, c'est Google. Google, qui met de plus en plus son immense capacité à trouver une réponse au service de l'utilisateur avec une utilisation informatique, et des usages, simplifiés.</p>
<p>Revenons sur Microsoft et le Surface Studio. Ne nous mentons pas, ce genre de device a déjà été fait, par Dell notamment et n'importe quel graphiste/animateur 3D te dira que les très bons pc de création sont dans ces tarifs (3 ou 4K€).</p>
<p>La réelle innovation, c'est mettre le software et le device réellement au service de l'utilisateur: PrestaShop qui adapte son interface au device, à l'adaptateur même, pour faciliter le job du monteur dans la recherche de ses filtres par exemple... c'est une ré-invention du PC desktop qui doit évoluer pour ne pas disparaître face à la tablette ou au téléphone mobile.</p>
<p>Penser que la prise jack retirée va pousser les technos bluetooth par exemple pourquoi pas... mais qu'y gagne l'utilisateur hormis des casques plus chers de qualité moindre et qu'il faudra recharger ? (on avait déjà notre iwatch et notre iphone à surveiller)<br />
Est-ce que ce sera plus simple ? Quelle est la plus value des nouveaux écouteurs sans fils d'Apple par exemple ?</p>
<p>Retirer des ports usb c et envisager un environnement tout connecté dans le "nuage" pourquoi pas.. mais qu'y gagne-t-on par rapport à maintenant ? Au lieu de parler de courage, pourquoi ne proposent-ils pas une solution software et hardware qui justifient ce changement: vers où on va et pourquoi et quel est le gain?</p>
<p>Mes deux centimes, merci pour cet article <img src="/themes/default/smilies/smile.png" alt=":)" class="smiley" /></p>Mathématiques = informatique ? - mageekguyurn:md5:46c643cb21765cea6ad2ebb0717cfad82015-10-28T08:25:33+01:002015-10-28T08:25:49+01:00mageekguy<p>@<a href="http://blog.mageekbox.net/?post/2013/03/01/Math%C3%A9matiques-informatique#c6998" rel="nofollow">Yann Ponty</a> : Amen, et merci pour ce superbe commentaire !</p>À propos du télétravail - mydago-assistant.comurn:md5:a316821fa691bc5484d2c5bb4015f0242014-11-21T11:03:17+01:002014-11-21T11:03:17+01:00mydago-assistant.com<p>Pratiquer le télétravail peut se faire humainement et légalement, mais certains employeurs ignorent ces deux critère encore actuellement !</p>Mathématiques = informatique ? - Yann Pontyurn:md5:4762beba8489cbbe939498d7726413482014-09-18T19:45:52+02:002014-09-18T18:45:52+02:00Yann Ponty<p>Je suis absolument d'accord avec le message de ce billet, et particulièrement touché par la justesse de la réaction d'Amaury.</p>
<p>C'est un sujet qui me passionne, donc ma réaction est sans doute disproportionnée (et ne sera très probablement que très peu lue, étant donné la date de publication du billet), mais dans les grandes lignes, ça donne :<br />
- L'info, ce n'est pas (seulement) des maths !<br />
- Le système perd énormément (en capacité d'innovation, en épanouissement individuel...) en ne détectant/valorisant pas les élèves principalement doués en info avant la fac/prépa<br />
- Tout ce qui se formalise n'est pas des maths (et, d'ailleurs, toutes les maths ne sont pas formelles)<br />
- Les maths, c'est super, c'est utile mais ça reste ... des maths (cad, pour l'informaticien, un outil, parmi d'autres)</p>
<p>Tout d'abord mon histoire perso : Élève médiocre au lycée (bac de justesse), je m'inscris à la fac "pour voir" (je faisais beaucoup de musique à l'époque, donc peu de temps a priori pour suivre les cours... <img src="/themes/default/smilies/smile.png" alt=":)" class="smiley" /> ), et là je tombe sur les Maths formalisées (ah, les quantificateurs... qui permettent à l'élève d'exprimer une preuve rigoureuse et, en transférant le fardeau de la preuve au correcteur, me permettent enfin d'échapper à l'arbitraire des corrections "humaines"). Je découvre ensuite l'info, dans toute sa splendeur (de l'architecture à la machine de Turing en passant par la vérification), où tout me semble passionnant et "facile". Intéressé par les algorithmes (et leur analyse, qui requière des outils aux fondations mathématiques profondes), je candidate et suis accepté au DEA (equiv. Master 1, on ne rigole pas !) Algorithmique, où nous ne sommes que 3 élèves issus de la fac, qui compensons tant bien de mal notre manque d'"astuces de taupin" (Qui de sérieux n'a pas fait de prépa ... à part moi ? <img src="/themes/default/smilies/wink.png" alt=";)" class="smiley" /> ) par une connaissance intime des objets de l'informatique (automates, grammaires, graphes...) et un goût du codage. Ce dernier en particulier, "un peu sale" pour la plupart de nos camarades théoriciens purs, s'avère un formidable support pour l'intuition (une démarche exploratoire de plus en plus répandue dans la recherche actuelle, y compris en maths !), et me permet de survivre dans un cursus assumant un fort biais en direction des profils "grandes écoles" (donc Matheux, dans le contexte). J'enchaîne alors avec une thèse en bioinformatique à Paris Sud (avec quand même pas mal d'algo... faut bien se faire plaisir un peu !), effectue quelques postdocs à l'étranger et en France, puis obtiens in extremis un poste de Chargé de Recherche au CNRS, à l'école Polytechnique, où j'effectue toujours mes recherches entre Maths Discrètes et Bioinformatique. Je suis d'ailleurs actuellement (2014) en séjour de recherche dans un département de Maths à Vancouver.</p>
<p>Du coup, j'ai vraiment l'impression d'être "passé entre les gouttes" d'un système qui sélectionne de façon un peu uni-dimensionnelle ("prenons les meilleurs en Maths/Physique, puis sélectionnons parmi ceux qui restent ceux qui feront de l'info"). Des fois ça marche, et les deux critères coincident : on rencontre parfois des "génies universels" un peu énervants dans cette branche professionnelle ... <img src="/themes/default/smilies/smile.png" alt=":)" class="smiley" /> et puis il est certain qu'un goût pour l'abstraction prédispose à la fois à l'Info et à certaines branches des Mathématiques. Assez souvent cependant, des informaticiens brillants (y compris dans les branches les plus théoriques) n'arrivent pas à s'exprimer dans l'idiome mathématique, ou ne partage pas la sensibilité des mathématiciens, et sont "perdus pour la cause". La plupart des preuves Mathématiques ne sont pas entièrement formelles, et l'évaluation de la qualité d'une copie ou d'un article scientifique de Maths est dépendante d'un certain nombre de critères relevant du consensus social (cf "élégance" d'une preuve, un argument "suffisamment détaillé" ...) qui relèvent bien d'une sensibilité propre (ce qui, au passage, ne remet pas en question la correction des résultats).</p>
<p>Toutes mes expériences en recherche, enseignement (y compris à l'X !) et vulgarisation scientifique m'ont conforté dans l'idée que la "sensibilité" d'un informaticien est qualitativement différente de celle d'un mathématicien. J'ai pu par exemple rencontrer lors d'une conférence en lycée un élève de terminale qui comprenait plus vite que tous les autres et généralisait des algorithmes, anticipant sur l'état de la recherche actuelle, avant d'apprendre de la bouche de son prof de Maths désespéré qu'il "a 1 de moyenne en Maths et n'aura jamais son bac..." (je plus marrant/désespérant : l'algo en question est une programmation dynamique, le type d'algo le plus proche des maths qui soit car reposant de façon cruciale sur une récurrence ...). De la même façon, les algorithmes contribués, dans plusieurs sous-domaines de l'informatique, par des Mathématiciens "purs" se révèlent parfois "théoriques", c'est à dire inimplémentables, incomplets ou inefficaces en pratique du fait de "constantes d'implémentation" astronomiques (Pas de généralité ici : En cryptographie par exemple, des progrès en calcul symbolique/scientifique et théorie des nombres se traduisent souvent par des avancées concrètes dans notre capacité à "casser" les codes). Plus généralement, certaines abstractions dans les langages de programmation (objet, templates C++/Java ... où la sémantique est "mouvante" mais se comprennent bien de façon mécanique en terme de "responsabilisation" des variables, ou de réécriture du code par lui-même), pour des raisons que je ne m'explique pas complètement, ne "passent" pas très facilement auprès des élèves matheux, même brillants. Pour conclure, les maths, et en tout cas des constructions formelles issues de celles-ci, sont certes omniprésente en informatique, mais elles servent de support à une sensibilité, à des intuitions et des problématiques, qui lui sont propres (exactement comme la physique théorique, par exemple) et justifierait un traitement de l'informatique comme une discipline à part entière.</p>
<p>Le "système France" perd énormément de la "satellisation" des informaticiens (initialement) "mono-doués", du fait de l'absence (ou la présence limitée aux dimensions "matheuse" et "technologique"... enseignée par des profs non-spécialisés) d'info avant la fac/prépa. Celle-ci permettrait de valoriser ces élèves à un age où ils en ont le plus besoin ! Pour ma part, sans une mère prof de math me rassurant sur mes capacités malgré mes notes foireuses, et un père prof de physique ayant connu le "racisme (light!) des purs", je n'aurais jamais pu faire ce métier de chercheur qui m'épanouit totalement, et où je suis persuadé que mon profil un peu atypique apporte quelque chose à la communauté. Après, le goût des Maths peut (ou pas) venir aux élèves doués en Info dans la suite de leurs études, mais il semble bien arbitraire d'en faire une condition nécessaire. Et puis, éviter une filtration initiale sur les Maths/Physique permettrait au moins de participer à l'épanouissement intellectuel et professionnel de ces élèves, et ainsi de garantir leur future contribution à la société (je commence à penser à ma retraite moi ! <img src="/themes/default/smilies/wink.png" alt=";)" class="smiley" /> ).</p>Réussir dans la vie… - Guillaume Dievarturn:md5:48dbd52b4230c26c2950b3be493b94d22014-08-30T12:45:26+02:002014-08-30T11:45:26+02:00Guillaume Dievart<p>La réussite au travail, c'est d'aller faire ce que l'on aime, et pas simplement aimer ce que l'on va faire. Mais le fait de devoir travailler n'est pas une façon d'avoir réussi pour certaines personnes.</p>
<p>La réussite, c'est simplement être heureux, et pas spécialement être aimé ou aimer. La réussite est dépendante de ce que l'on veut et de ce que l'on a.</p>
<p>Ce qui m’amène à cette phrase "Il y a deux façons d'être heureux : avoir plus ou vouloir moins."</p>Réussir dans la vie… - Kyoku57urn:md5:2c76a7e20e5cfa4900758cfc246a2c772014-08-12T10:49:44+02:002014-08-12T09:49:44+02:00Kyoku57<p>My scuze. J'ai fait la connexion dans ma tête trop rapidement et j'ai pas mis le texte que je commentais.</p>
<p>"Réussir, c’est sortir de son lit le matin... "</p>
<p>Du coup, là, j'ai carrément pas réussi.</p>
<p>Sinon, sommes nous obliger de réussir ? Si on échoue souvent, c'est qu'on réussit dans l'art d'échouer. Au final, nous sommes peut-être condamner à réussir quoiqu'on fasse. C'est plutôt positif.</p>Réussir dans la vie… - cyrussurn:md5:9ceeb5704914410b4a5d933507d170952014-08-12T09:22:34+02:002014-08-12T08:22:34+02:00cyruss<p>he is back <img src="/themes/default/smilies/smile.png" alt=":)" class="smiley" /> La réussite c est tout un état d esprit. Je pense qu'il faut comme base d etre positif. Tu ajoutes une pointe de détachement, d amitié et de travail et c est parti.</p>
<p>Le pire ennemi du bonheur je pense que c est la jalousie. Carpe diem <img src="/themes/default/smilies/smile.png" alt=":)" class="smiley" /></p>Réussir dans la vie… - mageekguyurn:md5:e6831e73005449045dbae9b84c301acd2014-08-12T08:03:33+02:002014-08-12T07:03:50+02:00mageekguy<p>@<a href="http://blog.mageekbox.net/?post/2014/08/11/R%C3%A9ussir-dans-la-vie%E2%80%A6#c6964" rel="nofollow">Julien</a> : La réponse est dans le billet, promis, juré, craché ;).</p>Réussir dans la vie… - Julienurn:md5:add7cc37bfc9ebd60e35f7e61670a4fe2014-08-11T23:11:17+02:002014-08-11T22:11:17+02:00Julien<p>"au détour d’un film" : lequel ? :p</p>Réussir dans la vie… - mageekguyurn:md5:2fa117c747a84ad96e9dc22b2e7a07f72014-08-11T17:52:49+02:002014-08-11T16:53:26+02:00mageekguy<p>@<a href="http://blog.mageekbox.net/?post/2014/08/11/R%C3%A9ussir-dans-la-vie%E2%80%A6#c6962" rel="nofollow">Kyoku57</a> : Il me faut une explication pour comprendre ton commentaire…</p>
<p>Et sinon, le réveil sonne chez nous à 6h15 en période scolaire.</p>Réussir dans la vie… - Kyoku57urn:md5:cee8fb2d02b864018d23c321a1d0301a2014-08-11T16:02:12+02:002014-08-11T15:02:12+02:00Kyoku57<p>Ben ça dépend ... tu te lèves à quelle heure ? <img src="/themes/default/smilies/smile.png" alt=":-)" class="smiley" /></p>Réussir dans la vie… - Benjamin Delespierreurn:md5:ac932907b034287ff6821653ac40c4902014-08-11T15:54:32+02:002014-08-11T14:54:32+02:00Benjamin Delespierre<p>Je voudrais revenir sur le volet sociétal pour souligner qu'il n'est pas étonnant, selon moi, que la société imprime sur l'individu cette définition de la réussite qui passe obligatoirement par le travail et ce qu'il apporte. Si on part du postulat qu'une société soit définie par le travail et la valeur ajoutée qu'elle créé, alors il est normal qu'elle pousse l'individu à s'y investir. Pour ma part, je pense qu'il y a plusieurs façon de réussir; socialement, en créant des liens avec nos semblables; professionnellement, en devenant un élément productif de la société; personnellement, en se cultivant ou en poursuivant des études etc.</p>
<p>Il y a forcément un domaine dans lequel on excelle, il n'existe personne qui soit mauvais à tout (et quand bien même il excellerait dans sa médiocrité) et pour citer Albert Einstein "tout le monde est un génie ; mais si vous jugez un poisson sur ses capacités à grimper à un arbre, il passera sa vie à croire qu’il est stupide"<br />
(<a href="http://esukudu.com/2012/12/06/echec-scolaire-selon-einstein/" title="http://esukudu.com/2012/12/06/echec-scolaire-selon-einstein/" rel="nofollow">http://esukudu.com/2012/12/06/echec...</a>)</p>
<p>Ne laissez jamais personne vous dire que vous êtes un raté parce que vous ne réussissez pas selon ses critère ou ceux de la société.</p>À propos de la programmation orientée objet #2 - mageekguyurn:md5:27e712eae1749e3e824df8840b1c5e742014-08-11T15:18:07+02:002014-08-11T14:18:35+02:00mageekguy<p>@<a href="http://blog.mageekbox.net/?post/2014/04/18/%C3%80-propos-de-de-la-programmation-orient%C3%A9e-objet-2#c6885" rel="nofollow">bob l'éponge</a> : Au moins je suis constant dans ma connerie…</p>
<p>Plus sérieusement, merci de m'avoir indiqué ces coquilles.</p>À propos de la programmation orientée objet #2 - bob l'épongeurn:md5:6420bf217466eddb839042c0bc267ce42014-06-14T10:30:41+02:002014-06-14T09:30:41+02:00bob l'éponge<p>pareille pour la seconde itération :<br />
À propos "de de" la programmation orientée objet #2</p>À propos de la programmation orientée objet - bob l'épongeurn:md5:d3a91de79d42f9039fa93a3168bf4d162014-06-14T10:29:43+02:002014-06-14T09:29:43+02:00bob l'éponge<p>Salut, juste une petit coquille dans le titre :<br />
À propos "de de" la programmation orientée objet</p>La liste de Tariq - paulurn:md5:e4d713654bc799e830bb3fae4d0129a12014-05-17T17:12:13+02:002014-05-17T16:12:13+02:00paul<p>Billet intéressant sur cette liste et le rapport de TARIQ KRIM (qui vous cite d'ailleurs) : <a href="http://fierdetredeveloppeur.org/2014/05/rapport-de-tarik-krim/" title="http://fierdetredeveloppeur.org/2014/05/rapport-de-tarik-krim/" rel="nofollow">http://fierdetredeveloppeur.org/201...</a></p>À propos de la programmation orientée objet #2 - Paulurn:md5:d690e8f65c2017640ffe8690638bd5822014-04-22T13:14:19+02:002014-04-22T12:14:19+02:00Paul<p>Effectivement, je comprends mieux ce que vous vouliez dire.<br />
Et on est bien d'accord trop de getter/setter ou des getters/setters inutiles permettront de faire une mauvaise utilisation de l'objet.<br />
Parcontre la ou je ne suis pas trop d'accord c'est pour la phrase:<br />
"""voir d'un autre thread ou processus, auquel cas c'est au client de se prémunir de se comportement, sauf qu'il doit avoir connaissance de ce fait, donc connaître l'implémentation de la classe, ce qui va à l'encontre de l'encapsulation"""<br />
Non le client ne doit pas avoir connaissance de l'implémentation mais juste de connaitre l'environnement d'exécution.<br />
De nos jours quasiment tous les système sont concurrents (utilisent un fichier sur un système multi-utilisateur et/ou une base de données, et/ou thread), donc on doit définir dès le départ comment gérer les cas concurrent<br />
Dans le cas d'un site web en PHP, un cache SQL, tout faire dans une transaction, lire les fichiers en début de programme et c'est tout, etc...<br />
Dans le cas d'un programme serveur en Java, utiliser les sémaphores/mutex/lock<br />
Etc...<br />
--<br />
Question, est que le design pattern "factory" ne serait pas la solution permettrait de gérer la concurrence plus facilement (lock/mutex juste dans la factory) et d'avoir des classes les plus indépendantes possible ?</p>À propos de la programmation orientée objet #2 - mageekguyurn:md5:e91fe4e2d67a5c0153aab3e2bfe452932014-04-22T11:37:24+02:002014-04-22T10:55:16+02:00mageekguy<p>@<a href="http://blog.mageekbox.net/?post/2014/04/18/%C3%80-propos-de-de-la-programmation-orient%C3%A9e-objet-2#c6830" rel="nofollow">Paul</a> : On ne se comprend pas.</p>
<p>Bien sur que tu peux très bien avoir du code ayant exactement le même comportement avec les deux approches dans la plupart des cas (les exceptions étant les getters qui récupèrent systématiquement l'information demandée d'un fichier ou d'une base de données, voir d'un autre thread ou processus, auquel cas c'est au client de se prémunir de se comportement, sauf qu'il doit avoir connaissance de ce fait, donc connaître l'implémentation de la classe, ce qui va à l'encontre de l'encapsulation).</p>
<p>Et également évidemment qu'aucune des deux approches n'est "bug free" potentiellement.</p>
<p>Je cherche juste à montrer qu'en exposant des getter (ou des setter) qui ne servent à rien, on permet aux utilisateurs de la classe de s'en servir et donc de potentiellement générer des bugs (sans parler du fait que cela expose inutilement l'implémentation de la classe et complique donc à la fois son évolution et sa maintenance, car en plus de devoir modifier les méthodes qui définissent un comportement, le développeur devra obligatoirement assurer la compatibilité des getter/setter, mais c'est encore un autre débat).</p>
<p>Les bugs de la première version ne sont permis que par le fait que l'état des différentes instances peut être modifié, et de plus indépendamment du contrôle des instances censées les gérer.</p>À propos de la programmation orientée objet #2 - Paulurn:md5:c04cba644a4bee551e231bf499db73052014-04-22T07:39:03+02:002014-04-22T06:39:03+02:00Paul<p>Donc vous êtes entrain de démontrer que ca marche pas, en faisant tout pour que ca ne marche pas ?<br />
Avec cette méthode il est possible de montrer que tout peux poser problème.<br />
.<br />
Si vraiment ca ne marche pas, je pense qu'il faudrait mieux montrer que ca ne marche pas en faisant <strong>tout pour que ca marche</strong><br />
.<br />
Montrez nous qu'en respectant tous les postulats de départ, que la version avec getter reste problématique ( je ne vois pas comment ca pourrait être le cas).<br />
.<br />
Je pense vous avoir montrer que si on implémentait les postulats de départ, alors la version 1 marche très bien et à contrario que votre version permet quand même d'avoir un résultat incohérent (le postulat non implémenté est "on ne peut pas faire une 2eme commande si on a pas payé la 1ere")<br />
.<br />
PS: dans ma version y a une typo dans $barman->giveDrinks() j'ai écris<br />
$drinks = $this-><strong>order</strong>;<br />
$this->drinks = null;<br />
return $drinks;<br />
au lieu de :<br />
$drinks = $this-><strong>drinks</strong>;<br />
$this->drinks = null;<br />
return $drinks;</p>À propos de la programmation orientée objet #2 - mageekguyurn:md5:cb652c8e199fe510c912bcfdb4b8334c2014-04-21T20:29:47+02:002014-04-21T19:45:50+02:00mageekguy<p>@<a href="http://blog.mageekbox.net/?post/2014/04/18/%C3%80-propos-de-de-la-programmation-orient%C3%A9e-objet-2#c6828" rel="nofollow">Paul</a> : Bien sur que le code de la première version est conçu pour ne pas fonctionner, puisque le but est de montrer que se baser sur un getter pour prendre une décision peut poser problème.</p>
<p>Difficile de le montrer sans le faire…</p>