Ontologia a écrit 2126 commentaires

  • # Fais un front-end à google

    Posté par  (site web personnel) . En réponse au journal Un moteur de recherche aussi futé et précis que bash?. Évalué à 4.

    Plusieurs problème : il faut que tu génère des chaines à partir de ta regexp. Pas facile...
    2 liens pour explorer le problème :

    http://www.perlmonks.org/index.pl?node_id=284513

    http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.13.2(...)


    Pour le problème de la casse, tu peux analyser les résultats que renvoi google.
    Une fois que tout cela est en place, tu pourrais faire une interface style www.goosh.org , agrémentée d'opérateur de filtrage texte.

    Un beau sujet à creuser, mais tu risque d'y passer du temps...

    « Il n’y a pas de choix démocratiques contre les Traités européens » - Jean-Claude Junker

  • # Et c'est mieux que ça ?

    Posté par  (site web personnel) . En réponse au journal Un module apache pour programmer des applis web en C++. Évalué à 2.

    Il y a ça aussi : http://modcplusplus.sourceforge.net/ pour apache 2.0

    En tout cas bravo :)

    « Il n’y a pas de choix démocratiques contre les Traités européens » - Jean-Claude Junker

  • # Exception de constitutionalité ?

    Posté par  (site web personnel) . En réponse au journal Hadopi, de plus en plus effrayant. Évalué à 4.

    Depuis la dernière modification de la constitution du 23 juillet 2008, les citoyens peuvent en principe saisir la constitution, en sus des mécanismes classique de 60 députés ou 60 sénateurs.
    http://www.conseil-constitutionnel.fr/conseil-constitutionne(...)
    Malheureusement, la loi organique définissant les modalités n'est pas encore voté, comme par hasard.

    Cette loi Hadopi viole de manière flagrante la constitution puisqu'il viole le rôle dévolu et exclusif de la justice de prononcer des sanctions.

    Malgré tout, je pense que c'est un biais par lequel on pourrait un jour casser cette première brique de la dictature qu'est en train de mettre en place pierre après pierre le nain (On met la télé/radio publique aux ordres, puis la justice, puis l'éducation, etc...).

    « Il n’y a pas de choix démocratiques contre les Traités européens » - Jean-Claude Junker

  • [^] # Re: prouveur automatique/assistant de preuve

    Posté par  (site web personnel) . En réponse au journal La preuve de programme : où en est-on ?. Évalué à 1.

    Les cygnes font partit du monde réel, donc si on a une théorie (tous les cygnes sont blanc) on fait des expériences et des observations pour la vérifier (exemple: biologie, physique)
    Tu raisonnes en médiocristan (de médio, milieu): le cygne a longtemps été perçu comme forcément de couleur blanche.
    On en a donc établi une règle, par "expériences et observations".
    Or un jour on a découvert l'existance de cygnes noirs (en 1790).

    Moralité : faire attention au scientisme platonifiant, on effectue un peu trop vite de belle conclusions qui ont toutes le visage de la belle démonstration scientifique.

    « Il n’y a pas de choix démocratiques contre les Traités européens » - Jean-Claude Junker

  • [^] # Re: prouveur automatique/assistant de preuve

    Posté par  (site web personnel) . En réponse au journal La preuve de programme : où en est-on ?. Évalué à 2.

    A ce propos, je vous conseille le "Cygne Noir" de Nassim Nicholas Taleb

    Une review qui n'a pas l'air trop mal : http://www.bakchich.info/article2665.html
    http://www.lesbelleslettres.com/livre/?GCOI=22510100957220
    http://www.alternatives-economiques.fr/le-cygne-noir--la-pui(...)

    Son site :
    http://www.fooledbyrandomness.com/
    Son itw sur France Culture (il est libano américain, mais il parle couramment français) :
    http://www.fooledbyrandomness.com/franceculture.mp3

    C'est le grand copain de Benoit Mandelbrot :)

    « Il n’y a pas de choix démocratiques contre les Traités européens » - Jean-Claude Junker

  • [^] # Re: prouveur automatique/assistant de preuve

    Posté par  (site web personnel) . En réponse au journal La preuve de programme : où en est-on ?. Évalué à 2.

    Principe de sceptique : on en a pas la preuve, alors on en sais rien, inutile de platonifier :-)

    « Il n’y a pas de choix démocratiques contre les Traités européens » - Jean-Claude Junker

  • [^] # Re: Se passer des tests ...

    Posté par  (site web personnel) . En réponse au journal La preuve de programme : où en est-on ?. Évalué à 2.

    Il te parle d'Esterel là. Esterel permet de faire du dev pour du hardware, monde où les entrées/sorties sont assez normés.

    Effectivement sur un OS desktop, on est pas dans le même monde, donc votre débat n'a pas lieu d'être en ces termes.

    « Il n’y a pas de choix démocratiques contre les Traités européens » - Jean-Claude Junker

  • [^] # Re: Se passer des tests ...

    Posté par  (site web personnel) . En réponse au journal La preuve de programme : où en est-on ?. Évalué à 2.

    Tu vis en 1970 ?
    Tu sais l'informatique d'entreprise a à peu près 30 à 40 ans de retard sur ce qui est au point en labo...
    Regarde Java : ça a 42 ans de retard si tu regardes Simula 67 (sorti en 67 comme son nom l'indique) qui possède une très grande partie des fonctionalitées offertes par Java.

    Surtout en France ou les théoriens sont perçu par mes collègues comme une bande de professeur nimbus incapable de proposer qq chose d'utile.

    « Il n’y a pas de choix démocratiques contre les Traités européens » - Jean-Claude Junker

  • [^] # Re: Je te rassure

    Posté par  (site web personnel) . En réponse au journal La preuve de programme : où en est-on ?. Évalué à 2.

    A part ça, tu peux éviter de faire des journaux intéressants où j'ai envie de répondre à tout le monde pendant des heures ?
    Ben oui, mais j'aie bien vous faire discuter pendant des heures, ça compense les cours de fac que j'ai jamais eu ;-)

    « Il n’y a pas de choix démocratiques contre les Traités européens » - Jean-Claude Junker

  • [^] # Re: Se passer des tests ...

    Posté par  (site web personnel) . En réponse au journal La preuve de programme : où en est-on ?. Évalué à 2.

    Dans la boite où je bosse, les spécifications dont tu donnes l'exemple relève plus des tests fonctionnels ou de performances.
    On utilise des logiciels spécifiques pour cela, qui vont automatiser l'expérience utilisateur dans le clickodrome, etc...

    Là ou la preuve de code est intéressante, c'est en complément des tests unitaires (avec junit) qui font parti intégrantes de la procédure de compilation qu'on automatise avec maven (le make amélioré de java).

    Effectivement l'intérêt de ce genre de logiciel est limité à une petite partie du processus de fabriquation du logiciel, mais ça peut avoir un intérêt en terme de coût non négligeable.

    « Il n’y a pas de choix démocratiques contre les Traités européens » - Jean-Claude Junker

  • [^] # Re: Se passer des tests ...

    Posté par  (site web personnel) . En réponse au journal La preuve de programme : où en est-on ?. Évalué à 5.

    Coq a été prouvé, ils ont sacrifié un thésard pour ça....

    « Il n’y a pas de choix démocratiques contre les Traités européens » - Jean-Claude Junker

  • [^] # Re: Se passer des tests ...

    Posté par  (site web personnel) . En réponse au journal La preuve de programme : où en est-on ?. Évalué à 3.

    Dans le cas de code non critique (ie. informatique de gestion), si le logiciel est capable de dire, au choix :
    - Couverture des contrats insuffisante
    - Code valide pour ses contrats
    - Code invalide pour ses contrats

    c'est déjà énorme.

    Si en plus, il sort un contre exemple, alors là c'est génial.

    J'imagine qu'en aéronautique, ou en hardware, on se doit de vérifier la preuve généré... Dans l'informatique de gestion on veut qq chose de plus rapide et plus fiable que l'écriture de tests unitaires à la mano...

    « Il n’y a pas de choix démocratiques contre les Traités européens » - Jean-Claude Junker

  • # Une fiabilité de plus en plus aléatoire

    Posté par  (site web personnel) . En réponse au journal Firefox est-il un bloatware (en français : un logiciel dont les fonctionnalités ne justifie pas une telle utilisation des ressources matérielles) ?. Évalué à 0.

    Je ne rentre pas dans le débat sur la consommation mémoire, il y a trop d'informations inconnues pour pouvoir juger...

    Je constate que Firefox, sous windows et sous mac (donc au boulot et chez moi), fonctionne de moins en moins bien.
    Typiquement, après 24h d'utilisation, ou plutôt de démarrage, il se trouve qu'il se met très régulièrement à ne plus fonctionner :
    - Le flash ne se charge plus
    - Cela commence pas une non prise en compte de la CSS.
    - Très vite, il devient incapable de recharger une page ou charger une nouvelle

    J'ai pris l'habitude de le killer tout de suite.

    Il y a d'autres dysfonctionnements moins reproductibles, dont je ne me souviens pas forcément, mais à mesure que l'expérience utilisateur de Firefox devient de mieux en mieux, les problèmes surgissent de plus en plus.

    « Il n’y a pas de choix démocratiques contre les Traités européens » - Jean-Claude Junker

  • [^] # Re: Non

    Posté par  (site web personnel) . En réponse au journal Déterminer le domaine d'un programme. Évalué à 2.

    En gros ce papier, ce sont les bases de l'analyse de flot pour la compilation (chose qui est au coeur de Lisaac).
    C'est marrant, car c'est une voie auquel on pense pour faire de la preuve de contrat sur du code Lisaac.

    « Il n’y a pas de choix démocratiques contre les Traités européens » - Jean-Claude Junker

  • [^] # Re: Halting problem

    Posté par  (site web personnel) . En réponse au journal Déterminer le domaine d'un programme. Évalué à 2.

    Alors justement (et j'en profite pour vous remercier de vos explications), d'après ce que j'ai compris, ce problème de halting est un cas typique du théorème d'incomplétude de gödel dans le contexte d'une machine de turing (c'était avec cet exemple que j'avais compris ce théorème).

    C'est un cas d'indécidabilité au sein d'une machine de turing (son cadre formel plus exactement), mais peut-on lever cette indécibilité dans un sur-ensemble d'une machine de turing ?

    Je suppose que c'est l'objet de pas mal de recherche ?
    (et qu'il me semble qu'un ordinateur quantique est un sur ensemble d'une machine de turing).

    « Il n’y a pas de choix démocratiques contre les Traités européens » - Jean-Claude Junker

  • [^] # Re: Tiens c'est drôle

    Posté par  (site web personnel) . En réponse au journal Déterminer le domaine d'un programme. Évalué à 2.

    Vous devriez faire un mode Java, c'est surement beaucoup plus propre que du C, et vous pourriez confier à qq ingénieurs de recherches de créer une startup pour vendre le produit, ça vous ferait du "fuck-you money" : si tu arrives à automatiser les tests unitaires dans n'importe quel SSII, ça aura un impact énorme !

    « Il n’y a pas de choix démocratiques contre les Traités européens » - Jean-Claude Junker

  • [^] # Re: Pas comme ça

    Posté par  (site web personnel) . En réponse au journal Déterminer le domaine d'un programme. Évalué à 2.

    Ensuite, ton idée d'intervalle se heurte aussi au problèmes des algorithmes ayant plusieurs variables d'entrée (ce qui fait un produit d'intervalles, ça doit pas mal augmenter le temps de calcul)

    Pour ce seul petit problème, j'imaginais (j'en parle là haut) de curryfier la fonction de sorte à avoir n fonction à une variable.

    « Il n’y a pas de choix démocratiques contre les Traités européens » - Jean-Claude Junker

  • [^] # Re: Macbouq

    Posté par  (site web personnel) . En réponse au journal Retour d'expérience du monde d'apple. Évalué à 2.

    Je plussoie, et j'ai la même expérience, sauf que j'ai jamais installé de distrib linux, j'ai que 60go de disque et j'ai mon pc sur ubuntu à côté.

    Je suis une victime de l'effritement aussi...

    La seul chose que je reproche à OS X, c'est la galère pour installer un lib perl, whatever , je suis systématiquement obligé d'exécuter mon code sur ma machine ubuntu ou l'install ne pose jamais aucun problème.

    Personnellement, j'utilise extremement rarement de logiciel tournant sous X, sachant qu'il y a pléthore de logiciel libre tournant en natif sous OS X.

    De toutes façons, toutes les unixeries, je les fait en mode texte, sur lequel je passe quand même la moitié de mon temps ;-)

    « Il n’y a pas de choix démocratiques contre les Traités européens » - Jean-Claude Junker

  • [^] # Re: style C++

    Posté par  (site web personnel) . En réponse au journal [Traitement d'image] Sortie de CImg 1.3.0. Évalué à 2.

    L'XML est par nature verbeux et illisible...

    Des équivalent lisibles ? YAML, format ini classique, le format de google ( http://code.google.com/p/protobuf/ )
    etc...

    XML est très bien pour des échanges entre applications, mais pour l'humain.

    « Il n’y a pas de choix démocratiques contre les Traités européens » - Jean-Claude Junker

  • [^] # Re: ce qui est très fort..

    Posté par  (site web personnel) . En réponse au journal "MasterCard Secure Code" ou "Verified by Visa" ou comment ne plus assumer. Évalué à 2.

    Donc j'en déduis que c'est la banque qui casque.
    Ou plutôt son assureur.
    La banque a de toutes façons intérêt à ce que ça soit rare, ça implique des frais de dossiers ainsi qu'une augmentation potentiel du cout de l'assurance.

    « Il n’y a pas de choix démocratiques contre les Traités européens » - Jean-Claude Junker

  • [^] # Re: Tu devrais savoir ça

    Posté par  (site web personnel) . En réponse au journal Le multicoeur va vraiment devenir problématique. Évalué à 5.

    Alors, justement, je suis pas académique, je bosse dans une grosse SSII.
    Et effectivement, on en revient à la vieille opposition entre chercheurs et ingénieurs en France.
    Les ingénieurs pensent que la théorie ça sert à rien, et que les gens formés à la fac sont une bande de théorien (= doux rêveur) incapable d'implémenter une lib ftp en java, et les théorciens pensent que les ingénieurs sont des bidouilleurs de code à pein capable d'implémenter un intranet en java.

    Le problème, c'est que c'est pas tout à fait faux...

    Autour de moi, j'ai des techniciens hyper forts... mais incapable de faire la différence entre un compilateur et interpréteur.

    J'ai réalisé un outil d'automatisation de code ces derniers temps sur lequel j'ai été pas mal force de proposition, et j'ai été assez effaré de constater que pas mal de gens avaient du mal à concevoir que parser un source, analyser son arbre abstrait et générer quelque chose avec, c'était possible...
    Des gens très bien, très compétent, parfaitement taillés pour les besoins d'une SSII, mais non, euhhh, c'est quoi un compilateur ?

    Effectivement, ça serait pas mal que les écoles d'ingés reviennent un peu plus dans le giron de l'université, et que les universités travaillent un peu plus à ajouter ce qui manque dans la formation pour adapter les étudiants à la gestion de projet, calculs de couts, etc...

    De savoir lire les abstract de paper, je ne suis pas sûr que ça soit directement utile, et c'est peut être trop leur demander, mais déjà, s'ils pouvaient avoir les connaissances théoriques de base qu'un Master 1 possède, je pense que ça serait déjà énorme, on perdrait beaucoup moins de temps.

    Mais il y a un tel mépris de la théorie, par des gens qui pensent que java est formidable, les framework le sont encore plus, et qui s'extasient des heures durant à faire des usines d'usines d'usines d'objets... que c'est mal baré.

    Tant pis, c'est la productivité qui en pâtit...

    « Il n’y a pas de choix démocratiques contre les Traités européens » - Jean-Claude Junker

  • [^] # Re: Le multicoeur va vraiment devenir problématique

    Posté par  (site web personnel) . En réponse au journal Le multicoeur va vraiment devenir problématique. Évalué à 4.

    Bon, d'accord, les 8 registres, les 300 instructions qui servent à rien, effectivement c'est horrible; Surtout quand on connait l'histoire de l'x86 qui est le fruit de hasard, de mariages entre une carpe et un lapin, etc...

    Par contre il y a un truc absolument génial sur l'x86, c'est la gestion de la mémoire. C'est une tuerie : les 4 ring, la segmentation, la gestion de la mémoire paginée, bref le 386, c'est génialement pensé.

    Pour le reste...

    « Il n’y a pas de choix démocratiques contre les Traités européens » - Jean-Claude Junker

  • [^] # Re: perf

    Posté par  (site web personnel) . En réponse au journal Le multicoeur va vraiment devenir problématique. Évalué à 1.

    Dommage, pour une fois que je pensais que tu ne disais pas des conneries, je tenais à le souligner ;-)

    Reprenons, je te parle des benchs sur thread-ring, pas les benchs généraux.

    Analysons http://shootout.alioth.debian.org/u32q/benchmark.php?test=th(...)


    1.0 Haskell GHC #2 8.88
    1.1 Haskell GHC 10.84
    1.8 Mozart/Oz 15.91
    3.3 Erlang HiPE 29.14
    4.0 Smalltalk VisualWorks #2 35.87
    7.8 Scheme PLT 69.19
    14 Scala 122
    16 Pascal Free Pascal 124.66
    17 Lisaac 130.07
    18 C++ GNU g++ #2 148.56

    Nous sommes donc sur un quadricore en 32 bits.

    Le meilleur, Haskell, torche en 9s
    Mozart, SmallTalk, Erlang suivent de pas trop loin.
    J'avoue que je sais pas comment fonction le compilo de sheme.

    Ce qui est intéressant, c'est de voir à combien sont les langages qui utilisent du threading "classique" : Scala, Pascal, Lisaac et C++
    On voit qu'ils sont largement distancés : les temps de commutation entre thread prennent un temps fou.
    122s, c'est plus de 13 fois le score d'Haskell
    Ca fait beaucoup.

    Ce serait très intéressant de savoir combien de thread réel on a dans chaque cas

    Bref, c'est parce ces langages gèrent automatiquement les threads, en n'affectant pas un thread par tâche, mais un thread pour plusieurs tâches (les espaces d'exécutions) qu'ils obtiennent de meilleur perfs.

    Effectivement, ce n'est pas tellement le langage en tant que grammaire/whatever qui compte ici, mais l'implémentation : l'interpréteur, la VM, le compilateur.
    D'avoir la petite primitive dans la grammaire du langage peut aider.

    « Il n’y a pas de choix démocratiques contre les Traités européens » - Jean-Claude Junker

  • [^] # Re: perf

    Posté par  (site web personnel) . En réponse au journal Le multicoeur va vraiment devenir problématique. Évalué à 3.

    Merci d'avoir explicité un raisonnement trop implicite dans mon journal :-)
    C'est exactement ça.

    Les langages qui s'en sortent bien dans le shootout sont les langages qui automatisent la gestion des threads et font souvent de bien meilleur choix que lorsqu'on code à la main.

    Quand on code à la main, on va souvent faire n thread pour n espace d'exécution distinct. Un système automatique va faire n thread pour m espace d'exécution, n < m , sachant que bien évidemment, les espaces d'exécution ne n'exécutent pas tous en même temps.
    La commutation entre thread prend du temps, donc ces langages, qui sont à VM, vont plus vite sur ce genre de code.

    Java/C# vont devoir se mettre au diapason vite fait, mais je fais confiance à Sun/Microsoft pour prendre les dispositions nécessaires.

    (PS : Pour Lisaac, COP, en cours d'implémentation (modulo les cours, les TER à gérer), utilise le même genre de mécanisme que SmallTalk/Haskel/Mozart/Erlang, mais en compilé...)

    « Il n’y a pas de choix démocratiques contre les Traités européens » - Jean-Claude Junker

  • [^] # Re: Où est le problème ?

    Posté par  (site web personnel) . En réponse au journal Le multicoeur va vraiment devenir problématique. Évalué à 7.

    Je pense que tu devrais arrêter de te poser des questions aussi précises sur l'informatique que l'on aura dans 3-4 ans.
    J'aime ça, je trouve ça marrant, et j'aime pas vivre au jour le jour ('fin si, de plus en plus et c'est pas plus mal). Si c'est ton truc de pas te poser de questions, parce que c'est "imprévisible", bahh, c'est cool pour toi :-)

    Et comme tu le dis, dans ton journal, on a déjà le début d'éléments théoriques.
    Ce qui est plutôt bon signe à ce stade.

    Pas faux, mais il restent des problèmes... La théorie, c'est bien, mais dans une SSII j'en connais peu qui s'y connaissent un minimum..

    - Comment apprend t-on au dev moyen à coder avec des threads... en java ? (oui je sais, ya leur nouveau fork/join)
    - Comment on debug sur des logiciels multithreadé et donc très peu déterministe ?
    - On fait comment pour gérer les perfs ? Gérer le partage de mémoire ? etc...
    - Combien de temps ça va mettre d'avoir de la gestion automatique de parallélisme dans les langages/framework mainstream ?

    « Il n’y a pas de choix démocratiques contre les Traités européens » - Jean-Claude Junker