Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#26 Le 07/06/2011, à 00:17

cm-t

Re : /* Topic des codeurs couche-tard [5] */

'Nuit;


Actu Ubuntu            ☺/
Pauses Ubuntu sur Paris            \_< -t
[(π)] La Quadrature du net

Hors ligne

#27 Le 07/06/2011, à 00:36

Elzen

Re : /* Topic des codeurs couche-tard [5] */

:!pakman a écrit :

Trop bien cette histoire de défis smile
Je propose que le jury prenne en compte le langage utilisé pour rendre son jugement :
Un programme en python est généralement plus simplement fait qu'en C par exemple wink

Question de points de vue.

Pylade pourra probablement témoigner qu'il a beaucoup plus de facilités (plus d'affinités aussi, mais pas que ^^) à faire un programme simple, léger et efficace tout en C que tout en Python 2 wink

La difficulté d'un langage dépend énormément du niveau de maîtrise, et puis le projet peut éventuellement s'appuyer sur des bibliothèques particulières qui ne sont pas forcément portées dans tous les langages (pour le CLFB, je ne sais plus si on avait trouvé la GNU ReadLine partout, par exemple).

Et puis c'est un défi, c'est fait pour s'entraîner, on s'entre-aide, et on peut changer d'avis en cours de route, tout ça ^^



Tiens d'ailleurs, j'viens de relire les specs, j'me rends compte qu'il y aurait une petite modif à faire, en fait : la commande « fichier 0 » est marquée en obligatoire à côté de « fichier » tout court, alors qu'en fait, elle n'a de sens que si le programme inclue aussi « fichier X », qui est optionnel. Donc seul « fichier » tout court devrait être obligatoire, et « fichier 0 » devrait être optionnel. Je corrige ?

Hors ligne

#28 Le 07/06/2011, à 00:37

Кຼزດ

Re : /* Topic des codeurs couche-tard [5] */

.


dou

Hors ligne

#29 Le 07/06/2011, à 00:42

:!pakman

Re : /* Topic des codeurs couche-tard [5] */

ArkSeth a écrit :
:!pakman a écrit :

Trop bien cette histoire de défis smile
Je propose que le jury prenne en compte le langage utilisé pour rendre son jugement :
Un programme en python est généralement plus simplement fait qu'en C par exemple wink

Question de points de vue.

Pylade pourra probablement témoigner qu'il a beaucoup plus de facilités (plus d'affinités aussi, mais pas que ^^) à faire un programme simple, léger et efficace tout en C que tout en Python 2 wink

La difficulté d'un langage dépend énormément du niveau de maîtrise, et puis le projet peut éventuellement s'appuyer sur des bibliothèques particulières qui ne sont pas forcément portées dans tous les langages (pour le CLFB, je ne sais plus si on avait trouvé la GNU ReadLine partout, par exemple).

Et puis c'est un défi, c'est fait pour s'entraîner, on s'entre-aide, et on peut changer d'avis en cours de route, tout ça ^^

Oui c'est vrai, l'efficacité dépend de la maitrise du langage wink



Edit :
Je résiste pas : inscrit moi Ark ^^ J'essaierai de faire un truc potable avec ncurses si j'ai le temps en cette période de bac tongue

Dernière modification par :!pakman (Le 07/06/2011, à 00:44)


...

Hors ligne

#30 Le 07/06/2011, à 00:56

Elzen

Re : /* Topic des codeurs couche-tard [5] */

Seth (ou Elzen), s'teplaît, « ark » ç'pas un diminutif tongue

Et ncurses n'est pas trop dans l'esprit du truc, vu que sauf erreur de ma part c'est pour faire un genre d'interface graphique mais en console, alors que là, il s'agit bien d'un logiciel conçu pour fonctionner en ligne de commande wink

Mais s'tu veux participer, pas de soucis ^^ (T'façon, j'suis pas sûr que les autres participants soient tellement plus avancés que toi roll)

Hors ligne

#31 Le 07/06/2011, à 01:48

Pylades

Re : /* Topic des codeurs couche-tard [5] */

ArkSeth a écrit :

– les liens physiques sur les répertoires n'étant pas autorisés, « repertoire1 => repertoire2 » crée un nouveau répertoire et crée des liens physiques vers tous les fichiers contenus.

Je proteste contre cette spécification optionnelle ; et je ne l’implémenterai pas.


:!pakman a écrit :

Trop bien cette histoire de défis smile
Je propose que le jury prenne en compte le langage utilisé pour rendre son jugement :
Un programme en python est généralement plus simplement fait qu'en C par exemple wink

Ou pas. J’étais parti sur du Python, mais j’ai finalement trouvé plus facile de le faire en C ; notamment à cause du manque de bibliothèques disponibles en Python 3, et des facilités de la GLib.


ArkSeth a écrit :

Pylade pourra probablement témoigner qu'il a beaucoup plus de facilités (plus d'affinités aussi, mais pas que ^^) à faire un programme simple, léger et efficace tout en C que tout en Python 2 wink

Gagné ! wink


ArkSeth a écrit :

Tiens d'ailleurs, j'viens de relire les specs, j'me rends compte qu'il y aurait une petite modif à faire, en fait : la commande « fichier 0 » est marquée en obligatoire à côté de « fichier » tout court, alors qu'en fait, elle n'a de sens que si le programme inclue aussi « fichier X », qui est optionnel. Donc seul « fichier » tout court devrait être obligatoire, et « fichier 0 » devrait être optionnel. Je corrige ?

Yep. Même si je pense implémenter cette spécification optionnelle.


ArkSeth a écrit :

Et ncurses n'est pas trop dans l'esprit du truc, vu que sauf erreur de ma part c'est pour faire un genre d'interface graphique mais en console, alors que là, il s'agit bien d'un logiciel conçu pour fonctionner en ligne de commande wink

Ou pas. Ncurses, c’est bien pour pouvoir gérer les flèches directionnelles, toussa… enfin l’édition de la ligne, quoi. Même si pour ma part j’ai choisi de me battre contre Readline.


ArkSeth a écrit :

Mais s'tu veux participer, pas de soucis ^^ (T'façon, j'suis pas sûr que les autres participants soient tellement plus avancés que toi roll)

Hey, c’est difficile, ton histoire. Enfin, disons que Readline est difficile. Et en plus ce n’est pas copain avec Valgrind (/me recherche désespérément un fichier de suppressions). Pour le moment, je détecte à peu près les type Mime, et j’ai internationalisé et fait un makefile pour automatiser la localisation.

D’ailleurs, je pose des questions et personne ne me répond. Quid du préfixe dans les sorties d’erreur d’un programme non-scriptable ? Et demander de localiser la notice décrivant la licence, c’est bien une mauvaise idée ?


“Any if-statement is a goto. As are all structured loops.
“And sometimes structure is good. When it’s good, you should use it.
“And sometimes structure is _bad_, and gets into the way, and using a goto is just much clearer.”
                Linus Torvalds – 12 janvier 2003

Hors ligne

#32 Le 07/06/2011, à 03:09

Pylades

Re : /* Topic des codeurs couche-tard [5] */

Hey, mais z’êtes tous couchés, en fait ! Putain, déjà 4 h ! yikes


“Any if-statement is a goto. As are all structured loops.
“And sometimes structure is good. When it’s good, you should use it.
“And sometimes structure is _bad_, and gets into the way, and using a goto is just much clearer.”
                Linus Torvalds – 12 janvier 2003

Hors ligne

#33 Le 07/06/2011, à 05:47

grim7reaper

Re : /* Topic des codeurs couche-tard [5] */

Hello World!

ArkSeth a écrit :

Tiens d'ailleurs, j'viens de relire les specs, j'me rends compte qu'il y aurait une petite modif à faire, en fait : la commande « fichier 0 » est marquée en obligatoire à côté de « fichier » tout court, alors qu'en fait, elle n'a de sens que si le programme inclue aussi « fichier X », qui est optionnel. Donc seul « fichier » tout court devrait être obligatoire, et « fichier 0 » devrait être optionnel. Je corrige ?

Oui, ça sera plus logique.

ArkSeth a écrit :

(pour le CLFB, je ne sais plus si on avait trouvé la GNU ReadLine partout, par exemple).

Si je crois qu'on l'a trouvé partout. En tout cas, il y a bien un binding en Haskell mais ce n'est pas ce que j'utilise…

ArkSeth a écrit :

Mais s'tu veux participer, pas de soucis ^^ (T'façon, j'suis pas sûr que les autres participants soient tellement plus avancés que toi roll)

Hého, je suis bien avancé moi, par contre ça fait un moment que je n'y ai pas retouché ^^"



Pylade a écrit :

Quid du préfixe dans les sorties d’erreur d’un programme non-scriptable ?

Je vois pas en quoi la préfixation des sorties d'erreurs implique une scriptabilité.

Pylade a écrit :

Et demander de localiser la notice décrivant la licence, c’est bien une mauvaise idée ?

Je pense qu'il vaut mieux la laisser en VO, mais la traduire ne me choquerais pas je pense.

Hors ligne

#34 Le 07/06/2011, à 06:42

Compteur du TdCCT

Re : /* Topic des codeurs couche-tard [5] */

Scores totaux, depuis le début :

1) 3432    nesthib
2) 3070    samuncle
3) 2903    Pylade
4) 2183    Кຼزດ
5) 1700+5  grim7reaper /* ./viewtopic.php?pid=3486252#p3486252 */
6) 1668    cm-t
7) 1296    na kraïou
8) 866    helly
9) 862    \\Ouranos//
10) 659    gnuuat
11) 592    tshirtman
12) 565    Lagierl
13) 429    Rolinh
14) 358    nathéo
15) 352    The Uploader
16) 263    Kanor
17) 196    Askelon
18) 176    :!pakman
19) 121    ǤƦƯƝƬ
20) 99    kamui57
21) 93    petifrancais
22) 78    edge_one
22) 78    pierguiard
24) 70    gulp
25) 42    sakul
26) 39    Le Rouge
27) 37    ilagas
28) 34    xapantu
29) 30    keny
30) 26    gustare
30) 26    d10g3n
32) 25    GentooUser
32) 25    Morgiver
34) 24    ไ୦บเઢ'
34) 24    Steap
36) 20    CROWD
37) 18    Ph3nix_
38) 16    kouskous
39) 15    timsy
40) 12    stratoboy
40) 12    sailing
42) 11    alexises
42) 11    Crocoii
44) 10    Toineo
44) 10    NutMotion
44) 10    pseudovingtcinqcaracteres
44) 10    pfriedZ
44) 10    CasseTaTele
44) 10    Zeibux
44) 10    THS`
51) 8    Mornagest
52) 7    Vista
53) 6    ubuntlin
53) 6    asma.geek
55) 5    tendances-tdct
55) 5    kinouchou
57) 4    danychou56
57) 4    Neros
57) 4    Biaise
57) 4    totoflute
57) 4    pinballyoda ㋛
57) 4    NLS le pingouin
57) 4    ceric
57) 4    Dice-Man
65) 3    Revan26914
65) 3    raspouillas
65) 3    sweetly
68) 2    SoJaS
69) 1    geenux
69) 1    ArzhurBZH

RépartitionPosts/heure


Codez-vous trop tard le soir ?
Demandez au Compteur du TdCCT pour le savoir !

J’ai été généreusement codé par tshirtman ; d’ailleurs, voici mon code source. TdCCT CEP : ./viewtopic.php?pid=3493579#p3493579 (p3492608).

Hors ligne

#35 Le 07/06/2011, à 06:42

Compteur du TdCCT

Re : /* Topic des codeurs couche-tard [5] */

Scores de la période en cours :

1) 60    Pylade
2) 31    cm-t
2) 31    Кຼزດ
4) 28    nesthib
5) 27    samuncle
6) 19    tshirtman
7) 17    na kraïou
8) 10    Rolinh
8) 10    :!pakman
8) 10    nathéo
11) 7    grim7reaper
12) 4    \\Ouranos//
12) 4    The Uploader
12) 4    kamui57
15) 1    xapantu

Codez-vous trop tard le soir ?
Demandez au Compteur du TdCCT pour le savoir !

J’ai été généreusement codé par tshirtman ; d’ailleurs, voici mon code source. TdCCT CEP : ./viewtopic.php?pid=3493579#p3493579 (p3492608).

Hors ligne

#36 Le 07/06/2011, à 06:55

nesthib

Re : /* Topic des codeurs couche-tard [5] */

plopage pas à l'aveugle ^^


GUL Bordeaux : GirollServices libres : TdCT.org
Hide in your shell, scripts & astuces :  applications dans un tunnelsmart wgettrouver des pdfinstall. auto de paquetssauvegarde auto♥ awk
  ⃛ɹǝsn xnuᴉꞁ uʍop-ǝpᴉsdn

Hors ligne

#37 Le 07/06/2011, à 11:03

Pylades

Re : /* Topic des codeurs couche-tard [5] */

grim7reaper a écrit :
Pylade a écrit :

Quid du préfixe dans les sorties d’erreur d’un programme non-scriptable ?

Je vois pas en quoi la préfixation des sorties d'erreurs implique une scriptabilité.

Ben, généralement, le préfixe dans les sorties d’erreur ça t’aide surtout à repérer d’où vient l’erreur dans un script, non ?
Je me disais que dans un programme exclusivement interactif, ça serait peut-être redondant et importun plus qu’autre chose…


grim7reaper a écrit :
Pylade a écrit :

Et demander de localiser la notice décrivant la licence, c’est bien une mauvaise idée ?

Je pense qu'il vaut mieux la laisser en VO, mais la traduire ne me choquerais pas je pense.

Ouais. Je pense que je vais juste demander de traduire la courte description en haut de la notice. Hum, par rapport à un fputs, un fprintf ça a un coût négligeable, hein ?

Ah, et grande question sur la vie, l’Univers et le reste : c’est fprintf(stderr, "%s\n", mess); ou fputs(mess, stderr); putc('\n', stderr); le mieux ? Je pense que c’est la première solution, mais je ne suis pas tout à fait sûr…


“Any if-statement is a goto. As are all structured loops.
“And sometimes structure is good. When it’s good, you should use it.
“And sometimes structure is _bad_, and gets into the way, and using a goto is just much clearer.”
                Linus Torvalds – 12 janvier 2003

Hors ligne

#38 Le 07/06/2011, à 12:45

Elzen

Re : /* Topic des codeurs couche-tard [5] */

Corrigé pour « fichier 0 », et j'ai rajouté :!pakman à la liste des fous ^^

Pylade a écrit :

Je proteste contre cette spécification optionnelle ; et je ne l’implémenterai pas.

Ç'vrai que ça fait un peu bizarre, à la relecture… en même temps, t'avais rien dit quand on est censés avoir validé la spec tongue

(Ceci dit, si tu implémentes « fichier1 => fichier2 » et pas la version tarabiscotée pour répertoires, il faut que tu vérifies que fichier1 n'est pas un répertoire pour au moins afficher un message d'erreur propre, j'pense, mais je suppose que tu y avais déjà pensé).

Pylade a écrit :

Ou pas. Ncurses, c’est bien pour pouvoir gérer les flèches directionnelles, toussa… enfin l’édition de la ligne, quoi. Même si pour ma part j’ai choisi de me battre contre Readline.

Ah ? Maintenant que tu le dis, c'est vrai qu'il me semble qu'on me l'avait déjà dit.

Pylade a écrit :

D’ailleurs, je pose des questions et personne ne me répond.

Quand c'est des questions sur la spec ou que j'suis vaguement compétent, je réponds yikes

Tiens, la preuve :

Pylade a écrit :

Je me disais que dans un programme exclusivement interactif, ça serait peut-être redondant et importun plus qu’autre chose…

Si tu implémentes l'option « -c », le programme peut aussi être utilisé de façon non-interactive, donc potentiellement dans des scripts wink

Pylade a écrit :

Ah, et grande question sur la vie, l’Univers et le reste : c’est fprintf(stderr, "%s\n", mess); ou fputs(mess, stderr); putc('\n', stderr); le mieux ?

Je ne voudrais pas m'avancer, mais je pense que la réponse est 42 (tu l'as cherché tongue)


En tout cas, bon courage à tous wink

Dernière modification par ArkSeth (Le 07/06/2011, à 12:50)

Hors ligne

#39 Le 07/06/2011, à 13:27

Pylades

Re : /* Topic des codeurs couche-tard [5] */

ArkSeth a écrit :

Tiens, la preuve :

Pylade a écrit :

Je me disais que dans un programme exclusivement interactif, ça serait peut-être redondant et importun plus qu’autre chose…

Si tu implémentes l'option « -c », le programme peut aussi être utilisé de façon non-interactive, donc potentiellement dans des scripts wink

Mouais. J’ai du mal à voir l’intérêt de cette option (et surtout à voir ça dans un script), mais admettons. Donc on met le préfixe en mode non-interactif et pas sinon ?


ArkSeth a écrit :
Pylade a écrit :

Ah, et grande question sur la vie, l’Univers et le reste : c’est fprintf(stderr, "%s\n", mess); ou fputs(mess, stderr); putc('\n', stderr); le mieux ?

Je ne voudrais pas m'avancer, mais je pense que la réponse est 42 (tu l'as cherché tongue)

Beuh… tongue


“Any if-statement is a goto. As are all structured loops.
“And sometimes structure is good. When it’s good, you should use it.
“And sometimes structure is _bad_, and gets into the way, and using a goto is just much clearer.”
                Linus Torvalds – 12 janvier 2003

Hors ligne

#40 Le 07/06/2011, à 17:05

grim7reaper

Re : /* Topic des codeurs couche-tard [5] */

Pylade a écrit :
grim7reaper a écrit :
Pylade a écrit :

Quid du préfixe dans les sorties d’erreur d’un programme non-scriptable ?

Je vois pas en quoi la préfixation des sorties d'erreurs implique une scriptabilité.

Ben, généralement, le préfixe dans les sorties d’erreur ça t’aide surtout à repérer d’où vient l’erreur dans un script, non ?

Pas que, ça sert aussi si tu écris dans un fichier de log commun (genre daemon.log).

Pylade a écrit :

Je me disais que dans un programme exclusivement interactif, ça serait peut-être redondant et importun plus qu’autre chose…

Si le programme est exclusivement interactif, oui c'est inutile.

grim7reaper a écrit :

Ouais. Je pense que je vais juste demander de traduire la courte description en haut de la notice. Hum, par rapport à un fputs, un fprintf ça a un coût négligeable, hein ?

Pour être sûr faudrait voir le code (mais bon ça risque d'être flippant encore…), je pense que t'as toujours un petit surplus dû au parsing de la chaîne de format. Après je pense que c'est négligeable vu la lenteur d'une opération d'I/O.

Pylade a écrit :

Ah, et grande question sur la vie, l’Univers et le reste : c’est fprintf(stderr, "%s\n", mess); ou fputs(mess, stderr); putc('\n', stderr); le mieux ? Je pense que c’est la première solution, mais je ne suis pas tout à fait sûr…

Ouais la 1 me semble meilleure : une seule ligne, une seule opération d'I/O et pour la sémantique on peut se dire qu'ajouter un '\n' c'est de la mise en forme et que ça justifie l'utilisation de printf.


Sinon aujourd'hui je me suis fait une petite autoformation C++ smile
Au programme : métaprogrammation, trait classes, policy classes, type erasure, safe bool idiom, allocateurs et template rebinding.
Bah c'est là que tu te rends compte que tu maîtrises pas le C++ autant que tu le penses ^^". Le C++ c'est un langage monstrueux (tant au niveau puissance, qu'au niveau complexité malheureusement).

Bon, plus qu'a digérer tout ça maintenant :]


Edit : j'ai vu que quelqu'un (probablement d'ici) a tenté d'accéder à mon CLFB, mais le lien était cassé. C'est réparé maintenant…

Dernière modification par grim7reaper (Le 07/06/2011, à 17:17)

Hors ligne

#41 Le 07/06/2011, à 18:04

Pylades

Re : /* Topic des codeurs couche-tard [5] */

grim7reaper a écrit :

Edit : j'ai vu que quelqu'un (probablement d'ici) a tenté d'accéder à mon CLFB, mais le lien était cassé. C'est réparé maintenant…

C’était moi. wink

(Bon, ben en fait tu n’avais rien commité…)


Sinon, j’ai vu que les utilitaires Gnu localisaient la notice… Hum, que faire ? tongue

Dernière modification par Pylade (Le 07/06/2011, à 18:05)


“Any if-statement is a goto. As are all structured loops.
“And sometimes structure is good. When it’s good, you should use it.
“And sometimes structure is _bad_, and gets into the way, and using a goto is just much clearer.”
                Linus Torvalds – 12 janvier 2003

Hors ligne

#42 Le 07/06/2011, à 18:09

Elzen

Re : /* Topic des codeurs couche-tard [5] */

Pylade a écrit :

Sinon, j’ai vu que les utilitaires Gnu localisaient la notice… Hum, que faire ? tongue

Te dire que ça fait partie de leur « coding style » ? roll

Hors ligne

#43 Le 07/06/2011, à 18:12

grim7reaper

Re : /* Topic des codeurs couche-tard [5] */

Pylade a écrit :
grim7reaper a écrit :

Edit : j'ai vu que quelqu'un (probablement d'ici) a tenté d'accéder à mon CLFB, mais le lien était cassé. C'est réparé maintenant…

C’était moi. wink

(Bon, ben en fait tu n’avais rien commité…)

Yep, j'ai bien fait quelques modifs y a 1 mois, mais rien de fonctionnel donc j'ai pas fait de commit.

Hors ligne

#44 Le 07/06/2011, à 18:41

Pylades

Re : /* Topic des codeurs couche-tard [5] */

/me proteste contre Gettext qui remplace « ’ » par « ' » quand il trouve une traduction.


“Any if-statement is a goto. As are all structured loops.
“And sometimes structure is good. When it’s good, you should use it.
“And sometimes structure is _bad_, and gets into the way, and using a goto is just much clearer.”
                Linus Torvalds – 12 janvier 2003

Hors ligne

#46 Le 07/06/2011, à 19:13

grim7reaper

Re : /* Topic des codeurs couche-tard [5] */

Ouais, mais là le truc est dans un tel état de semi‑implémentation que ça compile pas donc je vois pas trop l'intérêt de commiter.

Hors ligne

#47 Le 07/06/2011, à 19:17

tshirtman

Re : /* Topic des codeurs couche-tard [5] */

pouvoir revenir à une version antèrieur… pas hésiter à péter un truc pour refactoriser, pouvoir avancer sur plusieurs machines suivant ou on est… bref, comme d'hab quoi…

Hors ligne

#48 Le 07/06/2011, à 19:20

grim7reaper

Re : /* Topic des codeurs couche-tard [5] */

Ha oui ça OK, je parlais de commiter publiquement.
J'aime pas montrer du code en cours d'élaboration, je préfère qu'il soit un minimum présentable avant (je sais, c'est un choix discutable).

Dernière modification par grim7reaper (Le 07/06/2011, à 19:20)

Hors ligne

#49 Le 07/06/2011, à 21:46

Sir Na Kraïou

Re : /* Topic des codeurs couche-tard [5] */

plop


Descendant de Charlemagne et de LUCA.
Bleu, en l'hommage d'un truc bleu. :'(
C'est pas du bleu.
C'est pas le lac de Genève, c'est le Lac Léman.

Hors ligne

#50 Le 07/06/2011, à 21:50

The Uploader

Re : /* Topic des codeurs couche-tard [5] */

plop;

Bon il y a un truc que je trouve pas top dans Rails, c'est la génération de PDF... Un extrait :

pdf = IFPDF.new(current_language)
pdf.SetTitle("title")
pdf.AliasNbPages

pdf.SetY(10)
pdf.SetFontStyle('',8)
pdf.Cell("string")
pdf.Ln

Et ainsi de suite...

Faire de la présentation ainsi, spa humain..

Dernière modification par The Uploader (Le 07/06/2011, à 21:50)


- Oldies PC : Intel Pentium 3 @ 800 Mhz sur CM ASUS P2B-F, GeForce 4 Ti4800 SE, Disque Dur Hitachi 160 Go, 512 Mo de RAM, 3DFX Voodoo 2, Sound Blaster 16 ISA PnP, Windows 98 SE / XP)
- Desktop : Intel Core i7 6700K @ 4 GHz sur CM ASUS Z170-P, GeForce GTX 1070, SSD Samsung 850 EVO 1 To, 16 Go de RAM, Disque Dur Seagate Barracuda 3 To, Windows 10

Hors ligne