La façon dont tu pose la question me donne l'impression que la performance n'est pas une vraie contrainte pour vous (tout du moins sur cette partie là ). Vous ne virer flask que parce qu'on vous a dit qu'il y a quelque chose de plus hype et pas parce qu'il vous contraint. Donc pourquoi essayer de faire un choix en fonction de la perf alors que ça n'est pas si important ?
Les gens qui utilisent ça doivent connaĂźtre Ctrl+z qui marche avec vim comme avec emacs. Ăa permet au moins de lancer man pour savoir comment sortir. Rappel avec X11 les gens n'avais pas l'habitude de Fichier > Fermer ni d'utiliser la crois dans le coin de la fenĂȘtre.
[^] # Re: Bazar!
PostĂ© par barmic 𩩠. En rĂ©ponse Ă la dĂ©pĂȘche Python â partie 3 â Installation de Python et de paquets. ĂvaluĂ© Ă 1.
Je ne suis pas d'accord.
Dans un monde parfait oui le versionnement suffirait, mais personne n'est capable de garantir qu'un changement ne va pas casser une compatibilité. Donc non changer une micro n'est jamais anodin pour un projet.
De mĂȘme pour la stabilitĂ© des API l'esprit humain n'est pas capable de lire l'avenir donc tu n'a aucune garanti que l'API que tu dĂ©cris est stable ou non. Ce qui tiens un peu mieux que les autres c'est les API qui font le minimum de choses.
J'ai rien compris... Pour la premiÚre partie je sais pas trop ce que tu veux dire. Pour la seconde, euh... Tu connais beaucoup de logiciels en C qui utilisent que la libc (qui ne permet pas de créer de thread) ? Ou qui n'utilisent que la libc + les appels systÚme (ça te permet d'avoir des threads) ?
https://linuxfr.org/users/barmic/journaux/y-en-a-marre-de-ce-gros-troll
[^] # Re: Bazar!
PostĂ© par barmic 𩩠. En rĂ©ponse Ă la dĂ©pĂȘche Python â partie 3 â Installation de Python et de paquets. ĂvaluĂ© Ă 2.
Bon je me lance...
La gestion des dépendances est bien plus complexe que ce que tu semble croire. Beaucoup plus complexe.
Il y a généralement beaucoup de conflit entre des besoins différents par des gens différents.
le développeur
Son cheval de bataille c'est les fonctionnalités (c'est ce que les utilisateurs demandent).
C'est celui qui code l'appli. Il a un besoin primordial : gĂ©rer les dĂ©pendances en dehors du systĂšme. Il doit pouvoir avoir diffĂ©rentes versions d'une mĂȘme bibliothĂšque sans dĂ©truire son systĂšme y compris un build de la version pas encore sorti.
Ensuite il a des besoins: comme l'envi de ne pas avoir Ă supporter des versions de dĂ©pendance toujours plus exotiques, ne pas ĂȘtre contraint par les cycles de vie de chaque SE et distributions, ne pas empaqueter des millions de fois son logiciel,...
opérationnel/admin sys
Lui quand on lui parle fonctionnalités, il voit nouveaux bugs.
Son besoin primordial c'est que les logiciels fonctionnent bien sur son systĂšme et pour ça il faut que le logiciel se plie totalement Ă son systĂšme. Donc utilise le systĂšme de packaging qui va bien, les dĂ©pendances du systĂšme uniquement, si vraiment une dĂ©pendance n'existe pas sur le systĂšme (pourquoi diable ĂȘtre allĂ© chercher cette obscure dĂ©pendance ?) la packager sĂ©parĂ©ment, etc
(évidemment j'exagÚre)
Les 2 points de vues ne sont pas rĂ©conciliables ils sont opposĂ©s. Le seul endroit oĂč ça peut fonctionner c'est dans le cadre du devops oĂč il n'y a qu'une seule cible de dĂ©ploiement et les ops et les dev discutent. Aucun langage n'a rĂ©solu cette problĂ©matique, absolument aucun. Ni les vieux comme C ni les plus jeunes comme rust ou julia. Ceux qui te semblent avoir rĂ©ussi ont juste privilĂ©giĂ©s ton point de vue.
https://linuxfr.org/users/barmic/journaux/y-en-a-marre-de-ce-gros-troll
[^] # Re: Et Django?
PostĂ© par barmic 𩩠. En rĂ©ponse au journal Python pour la rentrĂ©e 2019 - Hors SĂ©rie - Python revient dans la course face Ă Node.js. ĂvaluĂ© Ă 0.
https://linuxfr.org/users/barmic/journaux/y-en-a-marre-de-ce-gros-troll
[^] # Re: Et Django?
PostĂ© par barmic 𩩠. En rĂ©ponse au journal Python pour la rentrĂ©e 2019 - Hors SĂ©rie - Python revient dans la course face Ă Node.js. ĂvaluĂ© Ă 4.
En fait tu te concentre sur la technique, mais c'est pas le plus important lĂ . Tu peux partager du code mĂ©tier entre ton front et ton back et ça peut ĂȘtre trĂšs utile. Il peut facilement arriver qu'une logique implĂ©menter cotĂ© client soit finalement plus utile dans le serveur et vice et versa.
Ăa n'est pas compliquĂ© d'avoir de la logique mĂ©tier qui ne soit pas adhĂ©rente Ă ton framework (ça a aussi pleins de bonnes propriĂ©tĂ©s en particulier pour les tests) et ça te donne beaucoup de flexibilitĂ©s d'Ă©volutions.
https://linuxfr.org/users/barmic/journaux/y-en-a-marre-de-ce-gros-troll
[^] # Re: [aiohttp|flask|bottle|pyramid] + hapic + [marshmallow|serpyco]
PostĂ© par barmic 𩩠. En rĂ©ponse au journal Python pour la rentrĂ©e 2019 - Hors SĂ©rie - Python revient dans la course face Ă Node.js. ĂvaluĂ© Ă 2.
C'était uniquement pour la symétrie. OSEF qui aurait inventé ou pas ce genre de choses.
https://linuxfr.org/users/barmic/journaux/y-en-a-marre-de-ce-gros-troll
[^] # Re: Et Django?
PostĂ© par barmic 𩩠. En rĂ©ponse au journal Python pour la rentrĂ©e 2019 - Hors SĂ©rie - Python revient dans la course face Ă Node.js. ĂvaluĂ© Ă 7.
Il n'a plus la hype, mais non il est encore trÚs bien. Dango est une solution complÚte qui vient avec une opinion. Il t'expliquer comment accéder à ta base de données, comment faire de l'authentification, etc. Flask et les autres microframworks sont beaucoup plus petits, ils font donc bien moins de choses et on leur ajoute des plugins du coup.
Si ton but est de recrĂ©er un site web complet "classique" ou si tu veux ĂȘtre guidĂ©, django est vraiment trĂšs bien. Si tu veux juste faire une API et que tu veux faire les choses Ă ta façon (possiblement mal) les microframworks sont lĂ pour toi.
Tu retrouve la mĂȘme dichotomie en ruby avec rail et synatra, en perl avec catalyst et dancer en java avec spring et vertx, en scala avec play et scalatra. DĂ©dicace tout de mĂȘme Ă python avec zope2 et java avec javaee d'avoir des trucs encore plus lourd.
https://linuxfr.org/users/barmic/journaux/y-en-a-marre-de-ce-gros-troll
[^] # Re: [aiohttp|flask|bottle|pyramid] + hapic + [marshmallow|serpyco]
PostĂ© par barmic 𩩠. En rĂ©ponse au journal Python pour la rentrĂ©e 2019 - Hors SĂ©rie - Python revient dans la course face Ă Node.js. ĂvaluĂ© Ă 1.
Les pythonistes aiment bien taper sur les javaistes mais pourtant copient de plus en plus de choses des inférieurs :o La derniÚre en date est la syntaxe des annotations :)
cf
https://linuxfr.org/users/barmic/journaux/y-en-a-marre-de-ce-gros-troll
[^] # Re: H.S.: Youtube
PostĂ© par barmic 𩩠. En rĂ©ponse Ă la dĂ©pĂȘche Portrait de Ken Thompson. ĂvaluĂ© Ă 5.
Tu as appris bien tardivement Ă parler.
Tu vois tu passe d'un terme neutre Ă un terme que tu veux politiser. Si j'ai appris une chose de linuxfr, c'est qu'il vaut que je me garde de parler politique sur linuxfr
^^1 . Je laisse ceux qui ont pleins d'idĂ©es en faire la publicitĂ©.il m'arrive encore de faire l'erreur, mais je finis toujours par le regretter â©
https://linuxfr.org/users/barmic/journaux/y-en-a-marre-de-ce-gros-troll
[^] # Re: Performance
PostĂ© par barmic 𩩠. En rĂ©ponse au journal Python pour la rentrĂ©e 2019 - Hors SĂ©rie - Python revient dans la course face Ă Node.js. ĂvaluĂ© Ă 2.
Mon commentaire ne remet pas en cause le fais d'aller regarder autre chose. Pas mal de frameworks réactifs ont des fonctionnalités vraiment sympas et sont plutÎt agréables à utiliser. On peut utiliser quelque chose de trÚs performant pour des raisons autres que la performance ;)
De rien :)
https://linuxfr.org/users/barmic/journaux/y-en-a-marre-de-ce-gros-troll
# Performance
PostĂ© par barmic 𩩠. En rĂ©ponse au journal Python pour la rentrĂ©e 2019 - Hors SĂ©rie - Python revient dans la course face Ă Node.js. ĂvaluĂ© Ă 10.
OSEF ? Le troll des langages c'est bien pour essayer d'amuser la galerie sur linuxfr, mais sorti de là ça n'a plus vraiment de sens. Tu regarde s'il y a des contraintes technologiques fortes, puis tu établi les procédés que tu souhaite mettre en place (performance, tests, qualité de code, que sais-je encore) et te regarde comment les mettre en place avec les langages proposés. Bref il y a moyen d'avoir une méthodologie pour répondre à cette question qui renvoie les remarques classiques aux cours de récréations d'écoles primaires.
J'en sais rien, mais des graph comme ça ne veulent rien dire (mais bon la dĂ©pĂȘche elle-mĂȘme comporte les mĂȘme biais).
« La performance » ça n'a pas de sens en soit. Ton besoin c'est quoi ? De fonctionner sur PI0 ? D'encaisser 109999 requĂȘtes/s ? De faire du temps rĂ©el dur ? Sans dĂ©finir ton besoin de performance un bench n'est pas plus pertinent que de comparer les palettes de couleurs des sites des techno dont tu parle1 .
Si tu veux rĂ©pondre extrĂȘmement vite, il vaut probablement mieux partir sur du C/C++/rust.
Si tu veux ĂȘtre en capacitĂ© d'encaisser Ă©normĂ©ment de requĂȘtes, c'est une architecture reactive dont tu va avoir besoin (donc oui node, asgi, go, vertx, whatever).
etc
AprĂšs il faut aussi ĂȘtre humble, est-ce que ce que la charge que vous devez supporter est vraiment importante ? Aujourd'hui n'importe qui peut monter des infrastructures en recopiant ce que peuvent faire Instagram, Facebook, Google, Youtube,... pour gĂ©rer 20 requĂȘtes/jour. C'est rigolo2 , mais c'est typiquement de l'overengenering.
Qu'ils sont juste dans la veine actuelle. Tous les écosystÚmes qui font du web sont entrain d'y passer. Ils ne sont ni les premiers ni particuliÚrement originaux.
La façon dont tu pose la question me donne l'impression que la performance n'est pas une vraie contrainte pour vous (tout du moins sur cette partie là ). Vous ne virer flask que parce qu'on vous a dit qu'il y a quelque chose de plus hype et pas parce qu'il vous contraint. Donc pourquoi essayer de faire un choix en fonction de la perf alors que ça n'est pas si important ?
c'est Ă©videment Ă©xagĂ©rĂ© â©
ça peut ĂȘtre un choix totalement assumĂ© et c'est trĂšs bien. Mais alors le besoin ce n'est pas de faire de la performance, mais de s'amuser avec de la techno. â©
https://linuxfr.org/users/barmic/journaux/y-en-a-marre-de-ce-gros-troll
[^] # Re: H.S.: Youtube
PostĂ© par barmic 𩩠. En rĂ©ponse Ă la dĂ©pĂȘche Portrait de Ken Thompson. ĂvaluĂ© Ă 2.
Effectivement ma source était fumeuse.
C'est justement mon point. On apprends et on utilise des mots sans en connaĂźtre la dĂ©finition. DĂ©jĂ on commence Ă apprendre Ă parler avant de savoir lire, mais comme tu le dis on crĂ©e notre vocabulaire via nos Ă©changes sans pour autant passer systĂ©matiquement par la case dictionnaire. Tu dis toi mĂȘme ne pas apprendre les difinitions d'un mais juste celle qui est la plus simple Ă retenir.
C'est une façon qui se veut déguiser de m'insulter ? Soit.1
Hum je n'ai aucun problĂšme pour faire intuiter mon hypothĂšse. Tu prends un mot du dictionnaire, tu regarde l'un de ses dĂ©finitions et tu va rechercher chaque mot de cette dĂ©finition. Pour chaque mot de cette dĂ©finition, tu fais de mĂȘme. Ăa construit un arbre qui s'arrĂȘte oĂč ? MĂȘme si mon hypothĂšse gĂ©nĂ©rale n'est pas exacte, je ne vois pas comment l'humain ferait pour avoir une dĂ©finition Ă tous les mots qu'il utilise (parce que c'est uniquement ça ma thĂšse, hein).
Pour ce qui est des travaux en IA, je ne vois pas en quoi ça remet en cause le principe de la nĂ©cessitĂ© d'un mĂ©talangage et la difficultĂ© pour un langage d'ĂȘtre totalement rĂ©flexif.
je vais m'arrĂȘter lĂ de toute maniĂšre. Je m'envais te plonker. Ă la revoyure. â©
https://linuxfr.org/users/barmic/journaux/y-en-a-marre-de-ce-gros-troll
[^] # Re: H.S.: Youtube
PostĂ© par barmic 𩩠. En rĂ©ponse Ă la dĂ©pĂȘche Portrait de Ken Thompson. ĂvaluĂ© Ă 3. DerniĂšre modification le 01 octobre 2019 Ă 22:48.
Ăa ne change pas grand chose. Tu as appris 3 dĂ©finitions par semaine en sixiĂšme. Allez tu Ă©tais un Ă©lĂšve appliquĂ©, tu en apprenais 4 fois plus soit 12 dĂ©finitions par semaine. Ă 3 ans tu apprend entre 4 et 10 mots par jour (donc 28 Ă 70 mots par semaine).
On considĂšre que les adultes ont un vocabulaire de 25 Ă 40k mots. Si tu apprend 12 dĂ©finitions par semaines il te faut 40 et 64 ans sans le moindre arrĂȘt pour pouvoir les apprendre...
Donc je vais continuer à estimer que comme tout le monde tu ne connais pas les définitions des mots que tu utilise ;)
Note qu'on peut aller plus loin, il est impossible de définir tous les mots d'une langue. On a forcément soit des cycle de définition soit des axiomes. Ou alors il faut utiliser un méta langage qui te sert à décrire les mots français qui lui dit avoir des axiomes ou utiliser un méta méta langage...
https://linuxfr.org/users/barmic/journaux/y-en-a-marre-de-ce-gros-troll
[^] # Re: Relativisons
PostĂ© par barmic 𩩠. En rĂ©ponse Ă la dĂ©pĂȘche Portrait de Ken Thompson. ĂvaluĂ© Ă 2.
OĂč est-ce que j'ai dis que les greens threads Ă©taient nouveaux ? J'ai dis qu'ils n'Ă©taient pas dans le minimalisme que mon interlocuteur semblait placer en haute estime.
https://linuxfr.org/users/barmic/journaux/y-en-a-marre-de-ce-gros-troll
[^] # Re: Relativisons
PostĂ© par barmic 𩩠. En rĂ©ponse Ă la dĂ©pĂȘche Portrait de Ken Thompson. ĂvaluĂ© Ă 5.
Encore de la théorie plus que du code.
Quel populisme. Ă l'Ă©poque quel proportion le faisait ? Compare ce qui peu l'ĂȘtre. Aujourd'hui il est Ă l'origine d'un langage dont le runtime est considĂ©rĂ© comme relativement complexe (les gens de rust se sont intĂ©ressĂ© au fait d'implĂ©menter des green thread comme go et ils ont reculĂ© devant la complexitĂ© de la mise en Ćuvre).
Et non on parle sans problĂšme en dizaines de milliers de personne faut vraiment arrĂȘter de mentir. Entre tout ceux qui font du plus ou moins bas niveau (bonjour CUDA/OpenCL), ceux qui font de l'embarquĂ© (coucou py-zĂ©ro, salut ESP8266,...) les gens dont c'est juste le mĂ©tier (dĂ©veloppeur de noyau, de bios, de driver,...), ceux qui font ça juste pour le fun (on a une dĂ©pĂȘche sur les consoles virtuelles, des trucs comme NachOS,...), ceux qui utilisent des unikernel,...
TrÚs bien pour toi. Je pense avoir suffisamment détaillé mon point de vu
https://linuxfr.org/users/barmic/journaux/y-en-a-marre-de-ce-gros-troll
[^] # Re: H.S.: Youtube
PostĂ© par barmic 𩩠. En rĂ©ponse Ă la dĂ©pĂȘche Portrait de Ken Thompson. ĂvaluĂ© Ă 2.
Bof on ne connait pas forcément la définition de tous les mots que l'on utilise. Enfant on t'a appris à parler sans te faire ouvrir un dictionnaire et je présume que tu n'a pas remis en cause la définition de chaque mot que tu as appris à cette époque.
Pour moi découvrabilité dans le contexte de *tube serait la propriété de découvrir des vidéos à partir d'une premiÚre.
Ma vision a beaucoup évolué en suivant la chaßne linguisticae sur... youtube.
https://linuxfr.org/users/barmic/journaux/y-en-a-marre-de-ce-gros-troll
[^] # Re: H.S.: Youtube
PostĂ© par barmic 𩩠. En rĂ©ponse Ă la dĂ©pĂȘche Portrait de Ken Thompson. ĂvaluĂ© Ă 3.
Autant je suis d'accord que découvrabilité a du sens autant je me demande s'il ne parlait pas de visibilité.
J'ai déjà vu le mot découvrabilité pour décrire des API ou des logiciels dans les quels tu peux déduire des fonctionnalités à partir de premiÚres.
viest trÚs réputé pour ça grùce à sa grammaire simple. Les api fluent peuvent apporter de la découvrabilité.https://linuxfr.org/users/barmic/journaux/y-en-a-marre-de-ce-gros-troll
[^] # Re: Source pour Java 17 en LTS ?
PostĂ© par barmic 𩩠. En rĂ©ponse au journal Enfin des NullPointerException plus explicites en Java. ĂvaluĂ© Ă 6.
L'employé en question c'est Mark Reinhold chef architect de Java SE (pour ceux à qui ça ne parle pas, il est l'un des 6 du board d'OpenJDK).
Le projet OpenJDK (c'est lui le site officiel) https://openjdk.java.net/projects/jdk/ pointe justement sur un mail de Mark Reinhold qui explique tout le cycle de vie: https://mail.openjdk.java.net/pipermail/discuss/2017-September/004281.html
Il dit bien une version LTS tous les 3 ans.
https://linuxfr.org/users/barmic/journaux/y-en-a-marre-de-ce-gros-troll
[^] # Re: Pendant ce temps, à Saint-Pétersburg...
PostĂ© par barmic 𩩠. En rĂ©ponse au journal Enfin des NullPointerException plus explicites en Java. ĂvaluĂ© Ă 2.
Ah mais je n'ai jamais dis qu'il n'y avait pas de bonne explication. C'est juste le « ils ont complÚtement supprimé le problÚme » qui m'a fait réagir.
https://linuxfr.org/users/barmic/journaux/y-en-a-marre-de-ce-gros-troll
[^] # Re: Pendant ce temps, à Saint-Pétersburg...
PostĂ© par barmic 𩩠. En rĂ©ponse au journal Enfin des NullPointerException plus explicites en Java. ĂvaluĂ© Ă 2.
Oui et non. Pour avoir utiliser kotlin et elm l'usage est vraiment différent. Rien que l'existence de l'opérateur
!!montre que le problÚme n'est pas totalement résolue. NPE est une exception runtime, quand tu utilise tu délÚgue à quelqu'un d'autres gestion de l'absence de valeur sans lui dire.C'est déroutant de voir ces langages sans valeur
nullqui ont complÚtement supprimé ce forme d'erreur (elle n'est pas représentable dans le langage), mais des fois c'est super agréable.https://linuxfr.org/users/barmic/journaux/y-en-a-marre-de-ce-gros-troll
[^] # Re: Pendant ce temps, à Saint-Pétersburg...
PostĂ© par barmic 𩩠. En rĂ©ponse au journal Enfin des NullPointerException plus explicites en Java. ĂvaluĂ© Ă 4.
Je ne dirais pas qu'il évite entiÚrement le problÚme. Il donne quelques clefs trÚs utile mais pour supprimer le problÚme il faut aller plus loin que ça. D'ailleurs le liens que tu donne explique dÚs le début qu'ils n'ont pas supprimé le problÚme.
La seule façon de supprimer le problÚme (que je connaisse), c'est de supprimer les valeurs null du langage. Si tu veux représenter du vide tu dois utiliser un type
MonType|Nothinget vérifier le type à chaque usage dangereux.https://linuxfr.org/users/barmic/journaux/y-en-a-marre-de-ce-gros-troll
[^] # Re: Relativisons
PostĂ© par barmic 𩩠. En rĂ©ponse Ă la dĂ©pĂȘche Portrait de Ken Thompson. ĂvaluĂ© Ă 8.
Oula je vais retirer de mon propos toute tournure pour aller juste Ă l'essentiel :
https://linuxfr.org/users/barmic/journaux/y-en-a-marre-de-ce-gros-troll
[^] # Re: Ah la vache
PostĂ© par barmic 𩩠. En rĂ©ponse au journal ukuu, un outil pour gĂ©rer ses kernels linux => Gniii ---- Payant ? => Gniii2. ĂvaluĂ© Ă 3.
Je présume que ça peu s'expliquer car le paiement est une forme d'engagement. Si tu paie et que c'est nul, tu as payer pour rien. Pour éviter de dire que tu as fauté en payant pour un truc nul, tu va chercher les éléments positifs et tenter de réduire les éléments négatifs.
Du moins je présume que ça vient de ça
https://linuxfr.org/users/barmic/journaux/y-en-a-marre-de-ce-gros-troll
[^] # Re: Relativisons
PostĂ© par barmic 𩩠. En rĂ©ponse Ă la dĂ©pĂȘche Portrait de Ken Thompson. ĂvaluĂ© Ă 4.
Je pense que si Thompson est un gros codeur, ça n'est pas trĂšs intĂ©ressant. Il en existe pleins de gros codeurs. Ce qui fait qu'il sort du lot c'est que les concepts créé ne sont pas remis en cause 50 ans plus tard, qu'ils ont mĂȘme trouvĂ© d'autres champs des possibles,... La performance d'Ă©criture d'un code en soit je ne sais pas trop qui sa passionne. Ăa donne des effets pour le quidam, mais faut le mettre en balance avec la qualitĂ© qui est produite par exemple pour que ça ait du sens.
Pour un autre domaine que je connais bien, c'est comme si pour faire comprendre la qualité d'athlÚte de Teddy Riner, on énonçait le nombre de pompes qu'il peut enchainer parce qu'expliquer que gagner des championnat du monde sur une technique différente à chaque combat c'était trop compliqué.
https://linuxfr.org/users/barmic/journaux/y-en-a-marre-de-ce-gros-troll
[^] # Re: Jargon
PostĂ© par barmic 𩩠. En rĂ©ponse au journal Navigateur Next 1.3.1: amĂ©liorations du minibuffer, du support pour de multiples plateformes, etc. ĂvaluĂ© Ă 1.
Les gens qui utilisent ça doivent connaĂźtre Ctrl+z qui marche avec vim comme avec emacs. Ăa permet au moins de lancer man pour savoir comment sortir. Rappel avec X11 les gens n'avais pas l'habitude de Fichier > Fermer ni d'utiliser la crois dans le coin de la fenĂȘtre.
https://linuxfr.org/users/barmic/journaux/y-en-a-marre-de-ce-gros-troll
[^] # Re: Relativisons
PostĂ© par barmic 𩩠. En rĂ©ponse Ă la dĂ©pĂȘche Portrait de Ken Thompson. ĂvaluĂ© Ă 2.
Je trouve que ça le place comme un gros codeur au lieu de le placer comme un excellent architecte.
https://linuxfr.org/users/barmic/journaux/y-en-a-marre-de-ce-gros-troll