Globalement les autres commentaires ont déjà dit ce que je pensais globalement sur les exceptions ; à savoir: selon les cas tu vas en avoir plein pour gérer finement les erreurs et les rattraper, ou bien les attraper plus globalement pour des erreurs plus fatales.
Mais dans l'absolu sans voir ton code (ou une partie pertinente) il n'est pas forcément évident de donner une réponse satisfaisante:
S'agit-il principalement d'erreur système ? Les message te semblent abscons pour l'utilisateur ?
S'agit-il d'exceptions "algorithmiques" (KeyError, ValueError, TypeError…) ? auquel cas il y a souvent des alternatives plus courtes et aussi robustes que raisonner par exception.
S'agit-il d'exception "Maison" ?
Je rajouterai que Python possède un arsenal d'outils efficaces permettant de factoriser le code si c'est l'aspect répétitif de ton code qui te gène.
Tu peux développer s'il te plaît, parce que pour le coup je ne sais pas trop si tu es d'accord avec moi ou pas ; le propos est en accord avec ce que j'ai dit (enfin c'est comme ça que je le comprends), mais dans la forme j'ai l'impression que tu essaies de me corriger.
Gagner de l'argent grâce au revenu de la publicité ou du porno sur un site installé sur un hébergement gratuit, n'est-ce pas gagner de l'argent grâce au travail d'autrui? aux travails de bénévoles?
Chaque fois qu'une entreprise gagne de l'argent avec un logiciel libre auquel a contribué un bénévole cette situation arrive. Et elle arrive donc tout le temps (ex: des gens qui contribue bénévolement à Linux). Ce n'est pas un problème, car le bénévole a volontairement contribué à un logiciel libre. Décréter que c'est un problème c'est ne plus vouloir de logiciel libre ("il est libre que si vous ne gagnez pas d'argent blablabla").
Et rien avoir de spécial à voir avec le porno ou la pub non plus ("Linux est libre, vous pouvez gagnez de l'argent, mais pas de gens tous nus qui copulent blablabla").
On pourrait même même étendre ton raisonnement à un particulier qui gagnerait du temps (ou prendrait du plaisir) grâce à un logiciel libre : au final il peut le faire grâce au travail des autres sans rien débourser ! C'est donc un salaud qui doit donner des thunes aux gentils développeurs bénévoles, ou bien contribuer !
Bref tu remets en cause le principe même du libre avec ton raisonnement. C'est ton droit, mais ne parle pas de compromis.
Autant dire que pour une grande majorité de gens, techniquement limité et qui n'ont pas 120$ à débourser pour leur blog personnel, tout ceci n'est plus tellement "libre" d'utilisation…
Les gens n'ayant pas d'argent pour se payer un ordinateur ne peuvent pas profiter de Linux, ni d'Olympe; donc on n'est pas vraiment libre de les utiliser non plus. Bref tu ne prouves rien ; 'logiciel libre' a une définition précise, tu peux quand même déconseiller un logiciel libre en particulier pour diverses raison tierce (support, performances, stabilité…).
Y a-t-il une initiative pour faire une Base de Données libre et collaborative sur les livres (titre, édition, année de parution, ISBN etc…) ? J'imagine que ça serait utile à tous les projets cités ici.
À titre personnel j'utilise http://www.manga-sanctuary.com/ pour gérer ma collection de mangas (principalement être notifié des sorties, ça évite de faire le tour des sites des éditeurs régulièrement). Mais pour en avoir parler avec un pote libraire (il y a longtemps en tout cas), ils n'avaient pas l'air super ouverts au partage, et donc a avoir des applis tierces qui viendraient taper dans leur base ; donc mettre leur base en libre me semble improbable, et c'est bien dommage (et ça explique pourquoi je ne participe pas vraiment à la vie du site en question).
Un développeur désirable pourra, s'il le souhaite, choisir en grande partie l'entreprise où il travaille, avec les avantages et inconvénients que chacune comporte ; tout étant une question de priorité au final.
Ton commentaire sent la frustration à plein nez (à moins que ça soit du troll).
Oui, mais le défaut opposé, à savoir préférer tout écrire soi-même en pensant que le boulot des autres est mauvais, est aussi très répandu.
J'ai un pote qui est l'archétype du PHPiste qui n'a jamais essayé d'aller plus loin dans ses connaissances théoriques ; il affirme qu'il n'utilisera jamais de framework (parce que c'est des "gros tas de merde"), mais il ne faut pas discuter très longtemps pour s'apercevoir de ses lacunes. Dernier exemple en date: alors que les bons frameworks web protègent plus ou moins automatiquement contre les failles CSRF, il n'en avait même jamais entendu parler ; l'excuse étant "je n'ai pas le temps de m'occuper de tout" ainsi que "comment je peux être au courant de ce genre de choses ?" (et oui forcément quand tu passes ton temps à - mal - réinventer la roue…).
Ah oui, c'est un professionnel, dans le sens où il est payé pour ça :)
Python (et GDScript aussi je présume) est typé, mais dynamiquement, et fortement aussi (même si c'est relatif comme notion). Il suffit de faire "bidulos" + 1 pour comprendre.
Sinon j'ai très envie depuis longtemps de tester Godot (ainsi que SuperPowers), mais il va falloir poser des vacances pour ça :)
Je ne sais pas vous, mais j'ai l'impression de revivre le même scénario qu'il y a 20 ans
Il est fréquent que des techniques parfois délaissées un temps réapparaissent sous une autre forme plus tard, et ça n'a rien de problématique dans l'absolu ; c'est juste que tu te focalises sur les ressemblances (parce que c'est attirant, que tu as envie de prédire le futur de manière simple) en oubliant les différences. Par exemple avec Rust et Go, on reprend goût à faire applications web avec des langages compilés en natif et ce n'est pas pour ça qu'on va retomber dans les travers des CGI en C.
En l’occurrence Java était fait par une seule entreprise dans son coin, alors que là on à affaire à un standard conçu par les acteurs du Web ; alors évidemment les erreurs de design sont possibles, mais les gens qu'il y à derrière sont sûrement les plus qualifiés pour faire le taff. Et puis il y a des erreurs de design même dans unix/posix (même si elles ont mis longtemps à être découvertes), mais bon la seule façon de ne pas faire d'erreur c'est de ne rien faire.
Les développeurs d'application (pas tous) s'en fichent un peu du web, de faire du contenu
Les développeurs qui ne veulent pas faire de web peuvent continuer à ne pas faire de web, je ne vois pas où est le problème. Si l'idée c'est d'arrêter d'améliorer les technologies web pour que les autres technologies restent dans la course, ça me parait être une mauvaise façon de raisonner.
Pourquoi en arrive t-on là ? A mon sens en grande partie à cause des logiciels privateurs
Je ne pense pas, vu comment les langages de script (Sh, Python, Ruby…) sont populaires, même en se focalisant dans les logiciels libres n'ayant pour vocation que de tourner sur les unix libres.
La diversité me semble faire toujours du bien sur le long terme
Il va y avoir plusieurs implémentation de la VM WebAssembly (tout comme on a plusieurs VM JavaScript), et sûrement des tas de langages qui vont générer du WebAssembly (tout comme des tas de langages génèrent déjà du JS; sauf que ça devrait être bien mois crade). Donc de la diversité il va y en avoir ne t'inquiète pas ! :)
Mais bon, je ne cherche pas à convaincre, c'est juste mon expérience après avoir étudié et essayé les deux.
Je ne doute pas que ton expérience soit intéressante, mais tu donnes peu de détails sur cette dernière qui permettrait de donner une idée de son aspect universel (si tu l'as expérimentée sur 12 applis de 500K lignes dans 5 langages, ce n'est pas pareil que 3 applis de 150 lignes dans 1 langage), tout en balançant des généralités ("les micro-frameworks c'est mieux sur le long terme").
Personnellement je bosse quotidiennement sur une application en Django depuis 2009 (et le prototype date de 2007), et la maintenance n'est pas un problème, sachant qu'on a commencé avant la 1.0, et qu'on utilise actuellement la 1.8. Il nous arrivent régulièrement d'atteindre les limites du framework, et je ne veux absolument pas à dire qu'il est parfait (non il est même très perfectible) ni lui faire spécialement de publicité (il n'en a pas besoin, et des tas d'outils de qualité bénéficient de moins de visibilité). Mais au final ce qui me limite le plus c'est mon propre code, et les quelques problèmes techniques que me posent le framework sont complètement anecdotiques par rapport à tout ce qu'il peut m'apporter par ailleurs.
Maintenant j'admets tout à fait que dans l'absolu le design monolithique de Django est moins élégant que le design d'un Pyramid par exemple; et je suis content qu'il existe des alternatives à la philosophie différente. Mais en l'occurrence Pyramid n'existait pas quand on a commencé le projet (je ne sais plus si Pylons existait à l'époque) ; je serai bien incapable de dire ce qui se serait passé si on avait utilisé autre chose (il faudrait une machine à voyager dans le temps pour ça), mais vu que Django a évolué de manière efficace (en cassant des choses quand il le fallait, mais en essayant de rendre les cassures les moins pénibles possibles), je doute que les choses auraient pu se passer beaucoup mieux.
Mouais, je ne me suis pas vraiment convaincu. Lorsque tu as 30K lignes de template Machin et 50K lignes de code utilisant l'ORM Bidule, quand bien même tu peux changer ton moteur de template ou ton ORM, tu ne vas pas le faire car tu devras quand même réécrire énormément de choses. Alors oui tu vas peut être pouvoir changer des composants secondaires, mais je pense que le choix des composants principaux se fera au début du projet et ne changera plus lorsqu'une masse critique de code sera atteinte.
On retrouve cette philosophie en Go, de ne pas s'encombrer de ce qui pourrait devenir un boulet par la suite.
Lorsque ton code grossi, il devient son propre boulet. Regarde FireFox ou OpenOffice (programmes que je respectent énormément mais qui illustreront très bien mon propos): ils n'utilisent pas de framework, pourtant les faire évoluer est très complexe, même si leurs développeurs sont eux mêmes écrits la plupart du code, parce que les décisions de design d'il y a plus de 15 ans ne sont plus forcément pertinentes aujourd'hui etc… Et OpenOffice passerait volontiers à Qt (un framework donc) si ça ne représentait pas tant de travail que ça de changer son propre code tout-écrit-à-la-main-sans-dépendance-à-un-framework.
Lorsqu'il y a aura pléthore de programmes en Go de plusieurs millions de ligne, que les gens auront essayé de s'en servir pour plein de choses pour lesquelles il n'était pas prévu à la base (ce qui est naturel et moteur de progrès), tu en trouveras plein des programmes en Go qui se traînent des boulets.
… moi qui croyais pouvoir vivre de ma passion c'est pas gagnez :-/
J'ai l'impression qu'il y a un paradoxe dans tes propos (mais je peux me tromper). On dirait que tu dis "le logiciel libre c'est cool j'ai envie d'en faire, mais fournir les sources c'est pénible car je veux gagner de l'argent avec, je le fais parce que je suis obligé". L'impression que ça me laisse c'est que tu aimes le libre… quand les autres en font.
Pour vivre de ta passion, c'est pas l'obligation de fournir les sources qui va te poser problème. Le problème c'est de fournir quelque chose pour lequel les gens sont prêt à payer. Quand bien même tu pourrais faire ta distro Linux sans donner les sources, qui va te donner de l'argent pour ta distribution sortie de nulle part, alors qu'il en existe déjà des tas qui fonctionnent très bien et qui sont gratuites ? Au final, les entreprises qui gagnent de l'argent en faisant des distro le font grâce au support (le service autour du logiciel donc) et pas à la vente de licences. Si tu veux les concurrencer, il faudra apporter quelque chose de différent ; parce que quitte à a voir la même chose, les gens iront prendre les 'produits' connus et éprouvés.
Mon associé et moi avons changé de portable récemment (lui un Lenovo, moi un HP), et nous avons tous les 2 été confrontés au fait qu'une même image, mais écrite sur différentes clés USB, va parfois fonctionner et parfois non (4 clés différentes, une seule qui fonctionne dans notre cas). Si tu peux, essaye donc avec plusieurs clé (et oui c'est pénible).
PS: as-tu activé la compatibilité BIOS ? (probablement désactivée par défaut si l'ordinateur est sous Windows10)
Pour le coup, Spine-runtime n'est pas libre (et c'est bien dommage, j'aimerai beaucoup que Spine dans son ensemble soit libre ; enfin bref). Je ne dis pas que ton expérience (0 réponse de leur part) ne peut pas arriver avec un projet libre, mais pour le coup les auteurs n'ont pas l'air d'être des spécialistes du libre ; j'imagine que la disponibilité des sources est quelques chose d'apprécié par leurs utilisateurs, mais qu'ils ont une vision classique du développement de produit, et que la gestion des contribution n'est pas leur priorité.
Je n'ai pas la prétention de les trouver génialissime
Je te taquinais :) c'était pour souligner que même si ton contenu est de qualité, les gens ne vont pas venir spontanément ; je te rassure tu n'es pas le seul à avoir un problème avec le "marketing".
je m'interroge sur les endroits appropriés pour le faire
Je t'ai donné quelques pistes (même si encore une fois il n'y a pas de recette du succès) dans le cas où ton contenu serait du logiciel libre. Mais comme tu n'as pas précisé ce qu'il en est réellement, il m'est difficile d'aller plus loin.
J'ajouterai que les gens peuvent faire plein de trucs sur leur smartphone (envoyer des SMS, jouer, …) sans être sur FB/Twitter. Évidemment que ces 2 réseaux sont populaires et que beaucoup de gens sont dessus. Mais des tas de gens s'en passent aussi ; d'où mon «cliché».
Là aussi tu mets le doigt sur un de mes problèmes fondamentaux. J'associe mon bien être à mon succès (ma "popularité", l'intérêt qu'on accorde à ce que je fais, bref).
En effet, c'est un problème. Je dis ça d'autant plus que j'ai tendance à penser comme ça aussi ; mais c'est une erreur à mon avis, et il faut faire un travail sur soi-même (et c'est dur). J'ai vu passer pas mal de choses à ce sujet sur le blog de Tristan Nitot.
Ou alors, le problème vient de moi, et de mon contenu. Je ne rejette pas du tout cette idée, au contraire, je sais que, parfois, mes idées dérangent
Hum penser que "olala je suis suis subversif mes idées dérangent", désolé mais ça fait un peu "Café du Commerce". Alors oui parfois on a un génie incompris qui n'est reconnu que bien longtemps après sa mort. Mais 99% du temps, quand on pense être CE génie, en fait ses propos/œuvres sont juste inintéressants. Il y a des milliers de logiciels sans grand intérêt qui traînent sur SourceForge/GitHub/… (certains à moi hein) ; leurs auteurs peuvent tout à fait penser que leurs logiciels sont géniaux, mais qu'ils ont 20 ans d'avance sur le reste du monde et que personne ne s'en aperçoit, mais ça ne changera pas la triste réalité.
J'auto-héberge tout ce que je fais, mon problème est donc, si je suis ton raisonnement, de trouver des vecteurs pour transmettre l'information, et c'est justement là que j'ai pensé que les réseaux sociaux pourraient m'aider.
Non seulement tu auto-héberges, mais je suis allé voir dans tes journaux, il est toujours impossible d'accéder à ton repo git de Cyca sans accepter une exception, et le http simple m'a planté dans les doigts. Il faut visiblement faire beaucoup d'efforts pour accéder à tes œuvres. Les gens feront peut-être cet effort quand ils te connaîtront (et encore), mais du coup c'est le serpent qui se mord la queue.
Tu pars du principe que les réseaux sociaux c'est FaceBook et Twitter. Mais Internet est un réseau social, LinuxFR est un réseau social, un LUG est réseau social. Si tu veux promouvoir tes logiciels (s'il s'agit bien de ça), FaceBook n'est sûrement pas le meilleur endroit (enfin sauf si tu fait des jeux grand public pour mobile par exemple, mais ça n'a pas l'air d'être le cas). Tu peux mettre ton code sur GitHub/BitBucket/… (même si ça n'est qu'un miroir de ton repo auto-hébergé par exemple), tu peux communiquer sur LinuxFR, allez dans un LUG, aux RMLL/Solutions Linux… ; tu discuteras avec plein de gens sans être passé par FB/Twitter. Mais si tu restes sur ton blog auto-hégergé dont tu ne parles à personne, aucune chance que des hordes de gens viennent te parler de tes œuvres génialissimes.
Ce n'est pas très précis dans ton commentaire, tu parle juste d'«existence». D'un certain point de vue tu existes déjà sur Internet autant que des millions de personnes, vu que je suis là à te répondre par exemple. D'un autre côté je suis à peu près certain que ce n'est pas ce que tu as en tête, et que tu parles de «succès». Si mon hypothèse est bonne, alors:
il faudra préciser ce que tu appelles succès. Veux-tu être connu en tant qu'homme (ex: être connu sur LinuxFR, avoir des millions de fans…), ou que tes œuvres soit plus diffusées (dans quelles mesures là encore).
il faut voir que si la recherche du succès n'est pas forcément une mauvaise chose, il faut rester humble et se dire que des tas de gens qui font des trucs formidables reste globalement des inconnus (peux-tu citer ne serait-ce que 10 contributeurs au noyau Linux ?). Il ne faut pas que ton bien-être passe par le succès, car c'est un peu comme jouer au loto.
Il n'y a pas que facebook et twitter dans la vie ; et être dessus n'implique pas non plus de passer ses journées sur son smartphone (là tu fais juste dans le cliché). Selon que tu fasses du logiciel libre ou des vidéos humoristiques, tu ne vas pas forcément côtoyer les mêmes sites. As-tu rendu accessible ton contenu aux personnes les plus à même de les apprécier ?
Tu sais des patrons qui ne se payent pas, ou moins que leurs salariés, ça arrive souvent dans les petites boutiques (la mienne par exemple). Alors c'est sûr que si pour toi patron == 'mec avec un gros cigare et un haut-de-forme', le débat va pas être élevé…
Si c'était pour faire un journal aussi creux que ton commentaire, c'est peut-être pas un mal…
Tu aurais pu faire une entrée dans le forum, montrer que tu peux écrire du contenu (et pas juste jeter 2 URLs), et faire un peu remonter ton karma. Tu as préféré venir polluer le journal (très intéressant lui) d'un autre et faire encore baisser ton karma. Soupir.
Oui, l'intégration de gros bouts de code écrits par un codeur externe (et qui potentiellement ne va pas continuer par la suite) est souvent problématique ; sur Blender par exemple on voit souvent des GSoC n'être intégrés que des années après. J'ai donné pour le financement participatif, et je suis donc forcément déçu par ce qui s'est passé ; mais on peut aussi voir les choses sous un autre angle et voir ces grosses contributions comme des "Proofs of concept", et qui permettent d'infirmer/confirmer que certains développements valent le coup (ou pas). Potentiellement, il auraient été trop risqué qu'un core dev passe du temps là dessus sans savoir à quoi s'attendre, donc au final ça n'est pas fondamentalement négatif (mais l'équipe de 0AD fera bien ce qu'elle voudra, bien évidemment).
seront alors déjà en train de travailler sur 0 A.D. Part 2 : Empires Besieged, qui devrait utiliser un nouveau moteur au lieu du vieillissant Pyrogenesis
Cool.
Quant au GSoC, ça n'est pas non plus dans les moyens humains de WFG.
Je pensais qu'être juste mentor permettait un investissement en temps assez faible (tout est relatif évidemment).
1) Il faut optimiser le code du jeu avant de le multithreader
Oui tout à fait.
2) Le moteur de jeu est vieux et date d'avant les multicores. La séparation des tâches dans plusieurs threads est possible, mais elle ne sera jamais parfaite.
Exploiter parfaitement une machine est déjà quasi-impossible, surtout avec un code ciblant des architectures diverses. Et le faire avec du code parallèle est forcément encore plus dur.
Pourtant je trouve que ce que tu dis est triste. Oui il est tout à fait possible que le moteur n'exploite jamais très efficacement les multicores ; parce que le développement, uniquement porté par des bénévoles, est lent, et que du coup le projet pourrait en effet être moribond bien avant ça. Mais dans l'absolu, le fait de voir un jeu sans cesse amélioré (plutôt que sorti une fois pour toutes, et abandonné par son studio, passé à un autre projet) est plutôt enthousiasmant, aussi je préfère ne pas dire "jamais" tant que le projet vit.
Il y a en gros 2 axes pour multithreader un jeu:
Mettre les différentes parties (rendu graphique, moteur physique, IA,…) dans des threads différents. L'avantages c'est que c'est assez "facile" de porter un vieux moteur monothreadé. Un des soucis est que les différentes parties ne sont pas aussi gourmandes les unes que les autres, aussi on exploite pas forcément très efficacement la machine.
Dispatcher les différentes "entités" du jeu dans les différents threads, chacun s'occupant de la physique/IA/… des entités dont il s'occupe. Évidemment c'est très complexe (les entités d'un thread doivent pouvoir interagir avec celles d'un autre efficacement—en plus des souci classique de race condition ; mais il faut quand même dispatcher de manière à ce que ça arrive le moins possible), mais si c'est bien fait c'est plus efficace que la technique précédente.
J'ai instinctivement tendance à penser que pour un RTS la 2ème technique est plus facile à implémenter que pour d'autres genre ; du fait par exemple qu'on pas mal d'entités statiques (les bâtiments) qui, si suffisamment éloignées ne vont pas interagir ensemble (évidemment ça dépend des règles) ; après lorsqu'on a plein d'unités au même endroit qui se tapent dessus ça devient peut-être assez infernal à faire efficacement, alors je ne m'avancerai pas trop non plus, il est clair que c'est complexe. Ça ferait sûrement un passionnant GSoC :)
# Question un peu floue
Posté par GuieA_7 (site web personnel) . En réponse au message Comment gérer correctement les exceptions. Évalué à 2.
Globalement les autres commentaires ont déjà dit ce que je pensais globalement sur les exceptions ; à savoir: selon les cas tu vas en avoir plein pour gérer finement les erreurs et les rattraper, ou bien les attraper plus globalement pour des erreurs plus fatales.
Mais dans l'absolu sans voir ton code (ou une partie pertinente) il n'est pas forcément évident de donner une réponse satisfaisante:
Je rajouterai que Python possède un arsenal d'outils efficaces permettant de factoriser le code si c'est l'aspect répétitif de ton code qui te gène.
[^] # Re: CGU
Posté par GuieA_7 (site web personnel) . En réponse au journal Olympe a besoin d’un coup de main. Évalué à 2.
Tu peux développer s'il te plaît, parce que pour le coup je ne sais pas trop si tu es d'accord avec moi ou pas ; le propos est en accord avec ce que j'ai dit (enfin c'est comme ça que je le comprends), mais dans la forme j'ai l'impression que tu essaies de me corriger.
[^] # Re: CGU
Posté par GuieA_7 (site web personnel) . En réponse au journal Olympe a besoin d’un coup de main. Évalué à 3.
Chaque fois qu'une entreprise gagne de l'argent avec un logiciel libre auquel a contribué un bénévole cette situation arrive. Et elle arrive donc tout le temps (ex: des gens qui contribue bénévolement à Linux). Ce n'est pas un problème, car le bénévole a volontairement contribué à un logiciel libre. Décréter que c'est un problème c'est ne plus vouloir de logiciel libre ("il est libre que si vous ne gagnez pas d'argent blablabla").
Et rien avoir de spécial à voir avec le porno ou la pub non plus ("Linux est libre, vous pouvez gagnez de l'argent, mais pas de gens tous nus qui copulent blablabla").
On pourrait même même étendre ton raisonnement à un particulier qui gagnerait du temps (ou prendrait du plaisir) grâce à un logiciel libre : au final il peut le faire grâce au travail des autres sans rien débourser ! C'est donc un salaud qui doit donner des thunes aux gentils développeurs bénévoles, ou bien contribuer !
Bref tu remets en cause le principe même du libre avec ton raisonnement. C'est ton droit, mais ne parle pas de compromis.
Les gens n'ayant pas d'argent pour se payer un ordinateur ne peuvent pas profiter de Linux, ni d'Olympe; donc on n'est pas vraiment libre de les utiliser non plus. Bref tu ne prouves rien ; 'logiciel libre' a une définition précise, tu peux quand même déconseiller un logiciel libre en particulier pour diverses raison tierce (support, performances, stabilité…).
[^] # Re: Excellent!
Posté par GuieA_7 (site web personnel) . En réponse à la dépêche Nouveau logiciel libre de gestion d'une bibliothèque: Alessandria. Évalué à 3.
Question peut-être stupide:
Y a-t-il une initiative pour faire une Base de Données libre et collaborative sur les livres (titre, édition, année de parution, ISBN etc…) ? J'imagine que ça serait utile à tous les projets cités ici.
À titre personnel j'utilise http://www.manga-sanctuary.com/ pour gérer ma collection de mangas (principalement être notifié des sorties, ça évite de faire le tour des sites des éditeurs régulièrement). Mais pour en avoir parler avec un pote libraire (il y a longtemps en tout cas), ils n'avaient pas l'air super ouverts au partage, et donc a avoir des applis tierces qui viendraient taper dans leur base ; donc mettre leur base en libre me semble improbable, et c'est bien dommage (et ça explique pourquoi je ne participe pas vraiment à la vie du site en question).
[^] # Re: Euh unix dans le nom ?
Posté par GuieA_7 (site web personnel) . En réponse à la dépêche Unixcorn, un nouveau projet d'hébergement de services libres. Évalué à 2.
Et en plus ça les empêche de faire un jour de l'hébergement sur Hurd par exemple (mais bon y a le temps :) ).
[^] # Re: Si tu veux être le couillon de service
Posté par GuieA_7 (site web personnel) . En réponse au journal Comment être un développeur désirable. Évalué à 7.
Un développeur désirable pourra, s'il le souhaite, choisir en grande partie l'entreprise où il travaille, avec les avantages et inconvénients que chacune comporte ; tout étant une question de priorité au final.
Ton commentaire sent la frustration à plein nez (à moins que ça soit du troll).
[^] # Re: pas faux
Posté par GuieA_7 (site web personnel) . En réponse au journal Comment être un développeur désirable. Évalué à 8.
Oui, mais le défaut opposé, à savoir préférer tout écrire soi-même en pensant que le boulot des autres est mauvais, est aussi très répandu.
J'ai un pote qui est l'archétype du PHPiste qui n'a jamais essayé d'aller plus loin dans ses connaissances théoriques ; il affirme qu'il n'utilisera jamais de framework (parce que c'est des "gros tas de merde"), mais il ne faut pas discuter très longtemps pour s'apercevoir de ses lacunes. Dernier exemple en date: alors que les bons frameworks web protègent plus ou moins automatiquement contre les failles CSRF, il n'en avait même jamais entendu parler ; l'excuse étant "je n'ai pas le temps de m'occuper de tout" ainsi que "comment je peux être au courant de ce genre de choses ?" (et oui forcément quand tu passes ton temps à - mal - réinventer la roue…).
Ah oui, c'est un professionnel, dans le sens où il est payé pour ça :)
# Non typé ?
Posté par GuieA_7 (site web personnel) . En réponse à la dépêche Publication de la version 2.0 du moteur de jeu libre Godot Engine. Évalué à 5.
Python (et GDScript aussi je présume) est typé, mais dynamiquement, et fortement aussi (même si c'est relatif comme notion). Il suffit de faire
"bidulos" + 1
pour comprendre.Sinon j'ai très envie depuis longtemps de tester Godot (ainsi que SuperPowers), mais il va falloir poser des vacances pour ça :)
[^] # Re: WebAssembly
Posté par GuieA_7 (site web personnel) . En réponse à la dépêche Firefox 45 ESR et autres actualités mozilliennes. Évalué à 10.
Il est fréquent que des techniques parfois délaissées un temps réapparaissent sous une autre forme plus tard, et ça n'a rien de problématique dans l'absolu ; c'est juste que tu te focalises sur les ressemblances (parce que c'est attirant, que tu as envie de prédire le futur de manière simple) en oubliant les différences. Par exemple avec Rust et Go, on reprend goût à faire applications web avec des langages compilés en natif et ce n'est pas pour ça qu'on va retomber dans les travers des CGI en C.
En l’occurrence Java était fait par une seule entreprise dans son coin, alors que là on à affaire à un standard conçu par les acteurs du Web ; alors évidemment les erreurs de design sont possibles, mais les gens qu'il y à derrière sont sûrement les plus qualifiés pour faire le taff. Et puis il y a des erreurs de design même dans unix/posix (même si elles ont mis longtemps à être découvertes), mais bon la seule façon de ne pas faire d'erreur c'est de ne rien faire.
Les développeurs qui ne veulent pas faire de web peuvent continuer à ne pas faire de web, je ne vois pas où est le problème. Si l'idée c'est d'arrêter d'améliorer les technologies web pour que les autres technologies restent dans la course, ça me parait être une mauvaise façon de raisonner.
Je ne pense pas, vu comment les langages de script (Sh, Python, Ruby…) sont populaires, même en se focalisant dans les logiciels libres n'ayant pour vocation que de tourner sur les unix libres.
Il va y avoir plusieurs implémentation de la VM WebAssembly (tout comme on a plusieurs VM JavaScript), et sûrement des tas de langages qui vont générer du WebAssembly (tout comme des tas de langages génèrent déjà du JS; sauf que ça devrait être bien mois crade). Donc de la diversité il va y en avoir ne t'inquiète pas ! :)
# Typo
Posté par GuieA_7 (site web personnel) . En réponse à la dépêche Revue de presse de l'April pour la semaine 11 de l'année 2016. Évalué à 7.
MicrosOft
Linux
étrangLer
breverts -> brevets
[^] # Re: Go
Posté par GuieA_7 (site web personnel) . En réponse au journal Et si JavaScript allait droit dans le mur ?. Évalué à 4.
Je ne doute pas que ton expérience soit intéressante, mais tu donnes peu de détails sur cette dernière qui permettrait de donner une idée de son aspect universel (si tu l'as expérimentée sur 12 applis de 500K lignes dans 5 langages, ce n'est pas pareil que 3 applis de 150 lignes dans 1 langage), tout en balançant des généralités ("les micro-frameworks c'est mieux sur le long terme").
Personnellement je bosse quotidiennement sur une application en Django depuis 2009 (et le prototype date de 2007), et la maintenance n'est pas un problème, sachant qu'on a commencé avant la 1.0, et qu'on utilise actuellement la 1.8. Il nous arrivent régulièrement d'atteindre les limites du framework, et je ne veux absolument pas à dire qu'il est parfait (non il est même très perfectible) ni lui faire spécialement de publicité (il n'en a pas besoin, et des tas d'outils de qualité bénéficient de moins de visibilité). Mais au final ce qui me limite le plus c'est mon propre code, et les quelques problèmes techniques que me posent le framework sont complètement anecdotiques par rapport à tout ce qu'il peut m'apporter par ailleurs.
Maintenant j'admets tout à fait que dans l'absolu le design monolithique de Django est moins élégant que le design d'un Pyramid par exemple; et je suis content qu'il existe des alternatives à la philosophie différente. Mais en l'occurrence Pyramid n'existait pas quand on a commencé le projet (je ne sais plus si Pylons existait à l'époque) ; je serai bien incapable de dire ce qui se serait passé si on avait utilisé autre chose (il faudrait une machine à voyager dans le temps pour ça), mais vu que Django a évolué de manière efficace (en cassant des choses quand il le fallait, mais en essayant de rendre les cassures les moins pénibles possibles), je doute que les choses auraient pu se passer beaucoup mieux.
[^] # Re: Go
Posté par GuieA_7 (site web personnel) . En réponse au journal Et si JavaScript allait droit dans le mur ?. Évalué à 5.
Mouais, je ne me suis pas vraiment convaincu. Lorsque tu as 30K lignes de template Machin et 50K lignes de code utilisant l'ORM Bidule, quand bien même tu peux changer ton moteur de template ou ton ORM, tu ne vas pas le faire car tu devras quand même réécrire énormément de choses. Alors oui tu vas peut être pouvoir changer des composants secondaires, mais je pense que le choix des composants principaux se fera au début du projet et ne changera plus lorsqu'une masse critique de code sera atteinte.
Lorsque ton code grossi, il devient son propre boulet. Regarde FireFox ou OpenOffice (programmes que je respectent énormément mais qui illustreront très bien mon propos): ils n'utilisent pas de framework, pourtant les faire évoluer est très complexe, même si leurs développeurs sont eux mêmes écrits la plupart du code, parce que les décisions de design d'il y a plus de 15 ans ne sont plus forcément pertinentes aujourd'hui etc… Et OpenOffice passerait volontiers à Qt (un framework donc) si ça ne représentait pas tant de travail que ça de changer son propre code tout-écrit-à-la-main-sans-dépendance-à-un-framework.
Lorsqu'il y a aura pléthore de programmes en Go de plusieurs millions de ligne, que les gens auront essayé de s'en servir pour plein de choses pour lesquelles il n'était pas prévu à la base (ce qui est naturel et moteur de progrès), tu en trouveras plein des programmes en Go qui se traînent des boulets.
[^] # Re: Voila...
Posté par GuieA_7 (site web personnel) . En réponse au message Quelle sont les droits de GNU/linux [ droit du copyleft ]. Évalué à 4.
J'ai l'impression qu'il y a un paradoxe dans tes propos (mais je peux me tromper). On dirait que tu dis "le logiciel libre c'est cool j'ai envie d'en faire, mais fournir les sources c'est pénible car je veux gagner de l'argent avec, je le fais parce que je suis obligé". L'impression que ça me laisse c'est que tu aimes le libre… quand les autres en font.
Pour vivre de ta passion, c'est pas l'obligation de fournir les sources qui va te poser problème. Le problème c'est de fournir quelque chose pour lequel les gens sont prêt à payer. Quand bien même tu pourrais faire ta distro Linux sans donner les sources, qui va te donner de l'argent pour ta distribution sortie de nulle part, alors qu'il en existe déjà des tas qui fonctionnent très bien et qui sont gratuites ? Au final, les entreprises qui gagnent de l'argent en faisant des distro le font grâce au support (le service autour du logiciel donc) et pas à la vente de licences. Si tu veux les concurrencer, il faudra apporter quelque chose de différent ; parce que quitte à a voir la même chose, les gens iront prendre les 'produits' connus et éprouvés.
# Clé USB capricieuse ?
Posté par GuieA_7 (site web personnel) . En réponse au message Impossibilité d'installer linux. Évalué à 2.
Mon associé et moi avons changé de portable récemment (lui un Lenovo, moi un HP), et nous avons tous les 2 été confrontés au fait qu'une même image, mais écrite sur différentes clés USB, va parfois fonctionner et parfois non (4 clés différentes, une seule qui fonctionne dans notre cas). Si tu peux, essaye donc avec plusieurs clé (et oui c'est pénible).
PS: as-tu activé la compatibilité BIOS ? (probablement désactivée par défaut si l'ordinateur est sous Windows10)
[^] # Re: À propos des nouvelles fonctionnalités
Posté par GuieA_7 (site web personnel) . En réponse à la dépêche Cinq ans de projets libres : bilan et retour d'expérience sur la contribution. Évalué à 3.
Pour le coup, Spine-runtime n'est pas libre (et c'est bien dommage, j'aimerai beaucoup que Spine dans son ensemble soit libre ; enfin bref). Je ne dis pas que ton expérience (0 réponse de leur part) ne peut pas arriver avec un projet libre, mais pour le coup les auteurs n'ont pas l'air d'être des spécialistes du libre ; j'imagine que la disponibilité des sources est quelques chose d'apprécié par leurs utilisateurs, mais qu'ils ont une vision classique du développement de produit, et que la gestion des contribution n'est pas leur priorité.
[^] # Re: Quel est ton but exactement ?
Posté par GuieA_7 (site web personnel) . En réponse au message Les geeks et les réseaux sociaux. Évalué à 2.
Merci beaucoup. Moi aussi j'ai pas mal de contenu privé qui prenait la poussière :)
[^] # Re: Quel est ton but exactement ?
Posté par GuieA_7 (site web personnel) . En réponse au message Les geeks et les réseaux sociaux. Évalué à 4.
Je te taquinais :) c'était pour souligner que même si ton contenu est de qualité, les gens ne vont pas venir spontanément ; je te rassure tu n'es pas le seul à avoir un problème avec le "marketing".
Je t'ai donné quelques pistes (même si encore une fois il n'y a pas de recette du succès) dans le cas où ton contenu serait du logiciel libre. Mais comme tu n'as pas précisé ce qu'il en est réellement, il m'est difficile d'aller plus loin.
[^] # Re: Quel est ton but exactement ?
Posté par GuieA_7 (site web personnel) . En réponse au message Les geeks et les réseaux sociaux. Évalué à 8.
https://xkcd.com/1601/
J'ajouterai que les gens peuvent faire plein de trucs sur leur smartphone (envoyer des SMS, jouer, …) sans être sur FB/Twitter. Évidemment que ces 2 réseaux sont populaires et que beaucoup de gens sont dessus. Mais des tas de gens s'en passent aussi ; d'où mon «cliché».
En effet, c'est un problème. Je dis ça d'autant plus que j'ai tendance à penser comme ça aussi ; mais c'est une erreur à mon avis, et il faut faire un travail sur soi-même (et c'est dur). J'ai vu passer pas mal de choses à ce sujet sur le blog de Tristan Nitot.
Hum penser que "olala je suis suis subversif mes idées dérangent", désolé mais ça fait un peu "Café du Commerce". Alors oui parfois on a un génie incompris qui n'est reconnu que bien longtemps après sa mort. Mais 99% du temps, quand on pense être CE génie, en fait ses propos/œuvres sont juste inintéressants. Il y a des milliers de logiciels sans grand intérêt qui traînent sur SourceForge/GitHub/… (certains à moi hein) ; leurs auteurs peuvent tout à fait penser que leurs logiciels sont géniaux, mais qu'ils ont 20 ans d'avance sur le reste du monde et que personne ne s'en aperçoit, mais ça ne changera pas la triste réalité.
# Quel est ton but exactement ?
Posté par GuieA_7 (site web personnel) . En réponse au message Les geeks et les réseaux sociaux. Évalué à 8.
Ce n'est pas très précis dans ton commentaire, tu parle juste d'«existence». D'un certain point de vue tu existes déjà sur Internet autant que des millions de personnes, vu que je suis là à te répondre par exemple. D'un autre côté je suis à peu près certain que ce n'est pas ce que tu as en tête, et que tu parles de «succès». Si mon hypothèse est bonne, alors:
Il n'y a pas que facebook et twitter dans la vie ; et être dessus n'implique pas non plus de passer ses journées sur son smartphone (là tu fais juste dans le cliché). Selon que tu fasses du logiciel libre ou des vidéos humoristiques, tu ne vas pas forcément côtoyer les mêmes sites. As-tu rendu accessible ton contenu aux personnes les plus à même de les apprécier ?
[^] # Re: Régression ?
Posté par GuieA_7 (site web personnel) . En réponse au journal Rapport Badinter sur le droit du travail..... Évalué à 4.
Super les clichés.
Tu sais des patrons qui ne se payent pas, ou moins que leurs salariés, ça arrive souvent dans les petites boutiques (la mienne par exemple). Alors c'est sûr que si pour toi patron == 'mec avec un gros cigare et un haut-de-forme', le débat va pas être élevé…
[^] # Tu aggraves ton cas
Posté par GuieA_7 (site web personnel) . En réponse au journal Du copyright et de l’enseignement dans l’UE. Évalué à 10.
Si c'était pour faire un journal aussi creux que ton commentaire, c'est peut-être pas un mal…
Tu aurais pu faire une entrée dans le forum, montrer que tu peux écrire du contenu (et pas juste jeter 2 URLs), et faire un peu remonter ton karma. Tu as préféré venir polluer le journal (très intéressant lui) d'un autre et faire encore baisser ton karma. Soupir.
[^] # Re: gz
Posté par GuieA_7 (site web personnel) . En réponse à la dépêche Entretien avec Nicolas Auvray, contributeur du projet 0 A.D.. Évalué à 3.
Oui, l'intégration de gros bouts de code écrits par un codeur externe (et qui potentiellement ne va pas continuer par la suite) est souvent problématique ; sur Blender par exemple on voit souvent des GSoC n'être intégrés que des années après. J'ai donné pour le financement participatif, et je suis donc forcément déçu par ce qui s'est passé ; mais on peut aussi voir les choses sous un autre angle et voir ces grosses contributions comme des "Proofs of concept", et qui permettent d'infirmer/confirmer que certains développements valent le coup (ou pas). Potentiellement, il auraient été trop risqué qu'un core dev passe du temps là dessus sans savoir à quoi s'attendre, donc au final ça n'est pas fondamentalement négatif (mais l'équipe de 0AD fera bien ce qu'elle voudra, bien évidemment).
[^] # Re: gz
Posté par GuieA_7 (site web personnel) . En réponse à la dépêche Entretien avec Nicolas Auvray, contributeur du projet 0 A.D.. Évalué à 2.
OK merci pour ta réponse précise.
Cool.
Je pensais qu'être juste mentor permettait un investissement en temps assez faible (tout est relatif évidemment).
[^] # Re: gz
Posté par GuieA_7 (site web personnel) . En réponse à la dépêche Entretien avec Nicolas Auvray, contributeur du projet 0 A.D.. Évalué à 2.
Oui tout à fait.
Exploiter parfaitement une machine est déjà quasi-impossible, surtout avec un code ciblant des architectures diverses. Et le faire avec du code parallèle est forcément encore plus dur.
Pourtant je trouve que ce que tu dis est triste. Oui il est tout à fait possible que le moteur n'exploite jamais très efficacement les multicores ; parce que le développement, uniquement porté par des bénévoles, est lent, et que du coup le projet pourrait en effet être moribond bien avant ça. Mais dans l'absolu, le fait de voir un jeu sans cesse amélioré (plutôt que sorti une fois pour toutes, et abandonné par son studio, passé à un autre projet) est plutôt enthousiasmant, aussi je préfère ne pas dire "jamais" tant que le projet vit.
Il y a en gros 2 axes pour multithreader un jeu:
J'ai instinctivement tendance à penser que pour un RTS la 2ème technique est plus facile à implémenter que pour d'autres genre ; du fait par exemple qu'on pas mal d'entités statiques (les bâtiments) qui, si suffisamment éloignées ne vont pas interagir ensemble (évidemment ça dépend des règles) ; après lorsqu'on a plein d'unités au même endroit qui se tapent dessus ça devient peut-être assez infernal à faire efficacement, alors je ne m'avancerai pas trop non plus, il est clair que c'est complexe. Ça ferait sûrement un passionnant GSoC :)
[^] # Re: gz
Posté par GuieA_7 (site web personnel) . En réponse à la dépêche Entretien avec Nicolas Auvray, contributeur du projet 0 A.D.. Évalué à 3.
Et du coup le passage a du multi-thread est-il un chantier prévu ? J'imagine que le boulot doit être assez conséquent, mais on peut rêver. :)