Ontologia a écrit 2138 commentaires

  • [^] # Re: Traductions ?

    Posté par  (site web personnel) . En réponse à la dépêche Attempto Controlled English. Évalué à 2.

    Bah c'est vrai que c'est l'écueil typique sur lequel on peut tomber.
    Pour la bibliothèque publique ou pour le DAF qui veut faire un petit peu de contrôle de gestion en farfouillant la base, l'application est claire.

    Pour le milieu professionnel oui et non, et en fait ça dépend de plusieurs paramètres :

    - Couverture du langage : si le langage contrôlé est assez limité, oui c'est vite un problème, parce que tu vas passer un temps fou à trouver une forme grammaticalement correcte (et je l'ai bien vu en jouant avec APE ces deux derniers jours). Mais ça dépend de la couverture du langage. ACE a clairement vocation à grossir, et plus il grossi, plus il déjouera ce piège.
    - Pour remplacer le SQL, s'il s'agit de proposer à un DBA de coder avec ça, on est d'accord, en l'état actuel des choses, c'est débile.
    Mais quand tu regardes ce qui est développé, soit t'as un peu de SQL qui traine et qui est codé par des dev qui n'aiment pas ça et qui ne sont pas à l'aise, malgré que les requêtes soit jamais super complexe,
    soit ils utilisent des frameworks qui cachent les requetes derrière des longues boucle sur les objets de l'ORM ou qui s'exprime en H(ibernate)QL.

    Bref, je suis pas certains que cette approche soit condamnée à jamais. Elle est pas encore mûre, c'est claire (et l'industrie a toujours 40 ans de retard sur la recherche), mais elle reste prometteuse.

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

  • [^] # Re: Traductions ?

    Posté par  (site web personnel) . En réponse à la dépêche Attempto Controlled English. Évalué à 4.

    Ah oui effectivement, je n'avais pas pensé à ça !
    Le pire c'est que j'ai bossé pour une boite qui fait des manuels techniques pour avion (mais c'était plus des listes de parts qu'autre chose) !

    Effectivement, ce serait un outil à rajouter à la collection : il prendrait du DRS pour le traduire dans une langue souhaité.

    ACE est quand même un langage super limité : tu es obligé d'utiliser le présent de l'indicatif, la voix active. les opérateurs modaux viennent d'être ajoutés. Les aspects temporels (j'en aurai d'ailleurs besoin pour ça), tu oublies, etc...

    Mais tu as raison, le libre colonise tout !

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

  • [^] # Re: Traductions ?

    Posté par  (site web personnel) . En réponse à la dépêche Attempto Controlled English. Évalué à 2.

    Oui voilà, une des applications les plus "visible" c'est d'utiliser ce genre d'outil pour remplacer du SQL.
    Ya un papier là dessus : http://www.ifi.uzh.ch/ddis/staff/goehring/btw/files/Bernstei(...)
    Un prof a testé ses étudiants et au bout de 3 jours ils sont plus à l'aise avec ACE qu'avec SQL.

    En gros partout ou tu travailles avec de la logique de premier ordre, tu pourrais utilement avoir besoin de ce genre d'outil, car ça te simplifie l'écriture de tes formules.

    Pour la traduction, je n'y crois pas, et d'autant plus que c'est le métier de ma compagne et que j'en découvre chaque jour un peu plus l'énorme complexité.
    Comme elle me le répète souvent : "Tu ne peux pas traduire un texte que tu ne comprend pas".

    Or là ACE travaille uniquement sur la syntaxe, il n'essaye pas de comprendre le texte, l'approche choisie est très claire là dessus.
    Ca peut des fois donner n'importe quoi car il n'a aucune notion de verbe de changement d'état ou de verbe d'action.

    Cet outil a des limites très bornées, mais ce qui est génial, c'est qu'en plus d'être libre, cet outil est très abouti.

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

  • [^] # Re: Différents langages

    Posté par  (site web personnel) . En réponse à la dépêche Apprendre un langage de programmation par an. Évalué à 2.

    Je pars 2 jours en vacances en bretagne, en me disant "chouette, quand je vais revenir, j'aurais peut être un commentaire interessant ?"
    De toi, dont je lis toujours les commentaires avec grand intérêt, je m'attendais à mieux :-(

    Je voulais juste dire que on peut créer des structures de contrôles, créer des fonctions de fonctions (curryfication), jouer avec l'héritage, etc...
    Toute chose qu'on ne peut faire avec C++, sans perdre de perfs.

    En ce qui me concerne, mais c'est juste personnel, j'apprécie cela quand je code.

    Joyeux noël !

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

  • [^] # Re: Différents langages

    Posté par  (site web personnel) . En réponse à la dépêche Apprendre un langage de programmation par an. Évalué à 3.

    Le problème de Lisaac, c'est que c'est pas un langage encore fini. Ca a beaucoup progressé, mais il y a encore du boulot.
    J'espère être réaliste en disant que dans deux ans on aura une stable (une version est en train d'être réécrite là)..

    Mais pour le moment, comme le dit Nicolas, Lisaac c'est pour le type qui veut de la perf tout en utilisant des choses qu'il a l'habitude de faire en Ruby et sans être obligé de coder en C++.
    Le compilateur actuel suffit très bien pour faire ça.

    C'est mon cas en ce moment, parce que je code un jeu web et c'est vrai que c'est un langage dans lequel on est assez vite à l'aise en fait*, et dans lequel on peut inventer toutes sortes de choses assez couillues, surtout avec les blocks et l'héritage qui un monde énorme à défricher.

    M'enfin c'est une question de gout, les pointeurs et les références, ça me fait fuir, certains adorent. Donc pour la perf, beaucoup de gens utiliseront encore C++



    *Je dis ça parce que j'avais jamais vraiment codé beaucoup en Lisaac, et j'en fait à haute dose depuis quelques semaines, en debugant le compilateur en passant.

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

  • # Ahhh enfin ! :-)

    Posté par  (site web personnel) . En réponse à la dépêche Reia, un langage fortement inspiré de Ruby. Évalué à 1.

    Enfin un langage qui écrit
    "Hello world!".puts() !
    C'est vrai quoi, "Hello World!" est une chaine, et l'affichage de cette chaine doit être fait par un message de l'objet chaine.

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

  • [^] # Re: Pourquoi créer un magazine ?

    Posté par  (site web personnel) . En réponse au journal Recherche auteurs pour un nouveau magazine libre autour du développement logiciel. Évalué à 2.

    Oui mais vu comme c'est difficile d'accéder au rédac chef, c'est pas encourageant

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

  • [^] # Re: C++ aété créépour augmenter le salaire des programmeurs

    Posté par  (site web personnel) . En réponse au journal C++ a été créé pour augmenter le salaire des programmeurs. Évalué à 4.

    Une grammaire de 10 pages et une spec de 500 pages ( http://www.ecma-international.org/publications/files/ECMA-ST(...) ).

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

  • [^] # Re: Ya pire ......

    Posté par  (site web personnel) . En réponse au journal C++ a été créé pour augmenter le salaire des programmeurs. Évalué à -3.

    C'est dirigé contre moi ?

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

  • [^] # Re: "Worse" is /not/ C++

    Posté par  (site web personnel) . En réponse au journal C++ a été créé pour augmenter le salaire des programmeurs. Évalué à 3.

    C'est pour !a que je disais que C++ était une application bizarre du worse is better : ça colle pas trop avec le modèle.

    D'ailleurs dans son "Model of software acceptance" son explication de C++ est elle aussi bizarre.
    J'avoue que ça m'interroge : ce langage est franchement mauvais, complexe, peu prévisible.

    Mais il a une syntaxe à la C : donc facile à apprendre.

    En fait, la principale raison de son succès, AMHA, c'est qu'en fait C++ était à l'époque le seul langage à permettre de faire de l'objet avec des perfs. Smalltalk, c'était, c'est encore lent (interprété).
    ObjectiveC a l'air pas mal, mais je ne sais pas ce que ça vaut.

    Donc, comme C++ était seul sur cette niche du "objet mais rapide", il a pris son essor et est devenu bloat.

    D'ailleurs quand on utilise de l'objet en c++ ça devient lent en fait, mais ya débat : http://coldattic.info/shvedsky/pro/blogs/a-foo-walks-into-a-(...)

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

  • [^] # Re: Ya encore pire ......

    Posté par  (site web personnel) . En réponse au journal C++ a été créé pour augmenter le salaire des programmeurs. Évalué à 8.

    java -> score 3
    Python -> Score 0

    lol

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

  • [^] # Re: C++ aété créépour augmenter le salaire des programmeurs

    Posté par  (site web personnel) . En réponse au journal C++ a été créé pour augmenter le salaire des programmeurs. Évalué à 0.

    Oui, bien vu ;-) J'ai lu ça, sachant que tout ce qu'il y a sur le site à côté est extrêmement intéressant, et je me dis, mhhh c'est gros quand même.

    Et comme je me suis dit que c'était une occasion de ricaner une fois de plus sur ce bloat language.

    Sur la structure, ça me rappel un peu une série de 30mn par papes du XXème siècle sur Arte. Evidemment pour Jean-Paul 1er ils ont du consacrer 30mn...
    Ils ont donc développé la fameuse théorie de l'assassinat pendant 1/4 d'heure, avant de la démonter le 1/4 d'heure suivant.
    1 - 1 = 0

    J'ai un peu fait la même chose ici ;-)

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

  • [^] # Re: MollAcademy

    Posté par  (site web personnel) . En réponse au journal Recherche auteurs pour un nouveau magazine libre autour du développement logiciel. Évalué à 2.

    Par expérience, si tu fais pas partie de leur groupe, tu te fait jeter.

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

  • [^] # Re: Raté à 19 minutes prêt...

    Posté par  (site web personnel) . En réponse au journal Voir un reportage est devenir FOU.. Évalué à -4.

    Non pas du tout, mais tu ne l'a pas écrit en prémaché, et prêt à penser, donc tu te fais jeter.

    Si on adhère un tant soit peu à ce qui est expliqué dans ce film, qui je l'avoue, m'a pas mal impressionné, mettre son argent à la NEF est une suite naturelle. Je connais des gens qui y sont depuis des années.
    J'y pense de plus en plus sérieusement, et faudrait que je me renseigne savoir si j'ai bien la gestion de mon compte en ligne et une CB pour passer chez eux..


    Pour me moinsser, c'est                                 là

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

  • [^] # Re: Oracle pas très visionnaire

    Posté par  (site web personnel) . En réponse au journal Apache vs Oracle. Évalué à 2.

    C'est marrant, en objet à prototype, tu n'as besoin de factory : si tu veux un singleton, tu redéfinis la méthode clone en lui faisant rendre lui même.
    Du coup, tu as un singleton naturel.

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

  • [^] # Re: Oracle pas très visionnaire

    Posté par  (site web personnel) . En réponse au journal Apache vs Oracle. Évalué à 8.

    Je suis pas sur..
    Au vu du nombre de ligne de codes écrites en Java, et le panurgisme de nombre d'ingénieurs de SSII et de leurs supérieurs qui sont eux-même d'anciens ingénieurs, je pense que Java a de beaux jours devant lui.

    Tant que développer, vendre au client, utiliser les frameworks libres à la mode comme Spring (qui bouffent 20Go de mémoire de base) sera gratuit, ils continueront !
    Il y aura juste un peu moins d'huile et ça grognera un peu.

    La majeur partie de la spec de java est derrière nous. Et quand tu vois le nombre d'année qu'il a fallu pour que tout le monde passe à Java 1.5 (et encore c'est pas le cas partout), Java7 c'est pas pour demain.

    Python ? Oui pourquoi pas, mais c'est pas à la mode chez les daïcidors.

    Ruby ? Trop conceptuel pour eux, 80% des développeurs ont du mal à comprendre, déjà qu'ils ont du mal avec l'objet...

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

  • [^] # Re: typage mou

    Posté par  (site web personnel) . En réponse à la dépêche Quelques nouvelles de Go, le langage de programmation. Évalué à 4.

    C'est aussi l'une des raisons pour lesquelles j'aime Perl, là où d'autres le détestent: tous ces marqueurs ($,@,%,...), ça les perturbe, alors qu'après pas mal de temps à les avoir manipulés, moi je trouve ça naturel.

    Et comme tous professionnel dans sa branche, ça te permet de jargonner et de te sentir assuré par la particularité de tes connaissances ;-)

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

  • [^] # Re: typage mou

    Posté par  (site web personnel) . En réponse à la dépêche Quelques nouvelles de Go, le langage de programmation. Évalué à 3.

    J'ai essayé de piger l'intérêt de Cduce, mais j'ai jamais réussi, c'est pas terriblement vulgarisé aussi...
    Tu entend quoi par sous-type qu'il y en aurait plein ?

    Pour moi du xml c'est tout simplement :

    type xml =
    | Element of (string * (string * string) list * xml list)
    | PCData of string

    Tes sous-types sémantique, ça serait prendre en compte le nom des balises et regarder la cohérence grammatical qu'il y a dans l'arbre ?

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

  • [^] # Re: typage mou

    Posté par  (site web personnel) . En réponse à la dépêche Quelques nouvelles de Go, le langage de programmation. Évalué à 3.

    J'ai déjà codé en OCaml, mais là...
    let concatMap f x = List.fold_left (@) C'est quoi le @ ?

    return n'est pas un mot clé ?

    let (>>) v f = let _ = concatMap f v in [];;
    pourquoi le let _ ? ça fait quoi

    let test () = je comprend pas ce que ça signifie, syntaxiquement, sémantiquement...

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

  • [^] # Re: Mais sinon, pourquoi je devrais m'intéresser à ce énième langage

    Posté par  (site web personnel) . En réponse à la dépêche Quelques nouvelles de Go, le langage de programmation. Évalué à 2.

    Oui mais tu es obligé de coder toute la base système dans la JVM, et donc en C.

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

  • [^] # Re: typage mou

    Posté par  (site web personnel) . En réponse à la dépêche Quelques nouvelles de Go, le langage de programmation. Évalué à 8.

    Google donne pas grand chose : http://scholar.google.fr/scholar?hl=fr&q=strong+type+%2B(...)

    J'ai l'impression qu'il y a pas vraiment d'étude sur le sujet. Après mon expérience perso me fait penser que "typage fort => Moins de bugs".

    J'ai pratiqué, dans l'ordre le :
    - Basic (quand j'étais gamin, ya 20 ans donc)
    - Pascal (pas mal)
    - C
    - Ocaml
    - (SQL)
    - Lisaac
    - Java
    - Ruby

    Typiquement, en caml, quand le compilateur me dit "ok" en général ça marche. Mais c'est pas très représentatif, parce que je l'utilise surtout dans des problématique ou je dois manipuler des grammaires.

    Pour les langages objets, entre java, lisaac et ruby, ce qui est indéniable dans mon expérience, c'est les Call On Null.

    En java et ruby, je m'en prend plein partout à l'exécution. D'où une boucle, trouver où c'est, corriger, relancer/retester.
    En Lisaac, pas mal de Call on Null sont détectés à la compilation, et c'est un vrai gain (surtout depuis l'ajout param w_null du compilateur dont la stable est en préparation, qui nous affiche tous les call on null potentiels du code).
    Ca t'oblige à faire une passe sur ton code lorsque tu le compiles.
    C'est un peu vexant au début, mais tu te retrouve avec beaucoup moins de problèmes.

    Pour le reste, le typage avancé et fort, et je pense surtout dans mon expérience en Lisaac et en Ocaml, me permette surtout de faire des choses très avancées, très courte, très propre, qui aurait été des bidouillage infames en Java, voire des fois en Ruby et qui auraient donc été super bugués.
    C'est donc plutôt en rendant le code plus "clair" pour quelqu'un qui a l'esprit assez "théorique" pour comprendre que ça diminue le nombre de ligne, simplifie le code et le rend moins sujets à bug.
    C'est plus une question d'expressivité.

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

  • [^] # Re: Et le choix de Ruby on Rails ?

    Posté par  (site web personnel) . En réponse au journal Pourquoi réécrire LinuxFr.org ?. Évalué à 1.

    Les 20% restants tu les faits en ligne de commande. ETerm est très bien, tu as des tabs, il est scriptable...
    C'est sur que si tu tiens absolument à ton clickodrome ça devient plus compliqué.

    Mais Macos reste un Unix et ça c'est cool

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

  • [^] # Re: image de la disquette et grub

    Posté par  (site web personnel) . En réponse au message Construire un boot grub pour un OS sur un DD en ext2. Évalué à 4.

    J'ai trouvé ça : http://www.omninerd.com/articles/Installing_GRUB_on_a_Hard_D(...)
    Et ça marche !!!

    Merci d'avoir cherché avec moi !

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

  • [^] # Re: PLus d'infos?

    Posté par  (site web personnel) . En réponse au message Construire un boot grub pour un OS sur un DD en ext2. Évalué à 2.

    Je pense que grub peut remplacer ce bootloader, car l'OS est compilé suite à un fichier en C, et qu'il me faut donc faire un jump sur le point d'entrée (main tout simplement) comme c'est très bien montré dans le lien que je pointe plus haut :
    http://a.michelizza.free.fr/pmwiki.php?n=TutoOS.Grub

    Le code d'init est en effet très simple :

    start:
    push ebx
    call kmain

    cli ; stop interrupts
    hlt ; halt the CPU


    Le code est ici http://git.debian.org/?p=lisaac/application.git;a=tree;f=isa(...) et si tu regardes dans x86/bootloader/startup.asm , tu pourras voir qu'en gros on fait un jump après avoir activé le mode protégé :-)

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

  • [^] # Re: PLus d'infos?

    Posté par  (site web personnel) . En réponse au message Construire un boot grub pour un OS sur un DD en ext2. Évalué à 2.

    Le script :

    dd if=/dev/zero of=hddIsaac bs=1024 count=8192

    mkfs hddIsaac


    # montage de l'image
    mount -o loop -t ext2 hddIsaac /mnt/loop
    #
    # # creation de l'arborescence initiale
    mkdir /mnt/loop/grub
    #
    cp /boot/grub/stage* /mnt/loop/grub
    #
    cat > /mnt/loop/grub/menu.lst << EOF
    title=Pepin
    root (fd0)
    kernel /kernel
    boot
    EOF

    cp kern/kernel /mnt/loop
    umount /mnt/loop
    #
    # # installation de grub
    grub --verbose --device-map=/dev/null << EOF
    device (fd0) hddIsaac
    root (fd0)
    setup (fd0)
    quit
    EOF

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