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.

#1901 Le 14/09/2013, à 20:27

Elzen

Re : /* Topic des codeurs [8] */

Bon, j'suis en train de bosser sur le montage des supports réseaux par Touhy.
Est-ce que quelqu'un saurait comment on monte du NFS avec fuse ?

Hors ligne

#1902 Le 15/09/2013, à 00:14

amj

Re : /* Topic des codeurs [8] */

tshirtman a écrit :
amj a écrit :

Tu sais que dans les contrat de google, tout ce que tu fais appartient à google? Tu n'as alors plus le droit de publier sous licence libre. mad

http://video.rmll.info/videos/vis-ma-vi … iel-libre/ à 5min30

J'ai de sérieux doutes, à ma connaissances, ils ont 30% de leurs temps perso pour bosser sur leurs projets persos, ce qu'ils veulent, guido avait 50% au moins, et il est évident que python n'est pas devenu propriété de google. Quand à ce qu'ils font en dehors du boulot, je ne crois pas que google puisse revendiquer une quelconque paternité dessus, que ce soit en France ou aux US.

Tu pense que pour l'avoir lui ils étaient près à faire un exception neutral
Par contre un informaticien "ordinaire" c'est plus facile à trouver hmm
Et pour leur image de marque, comme personne n'est au courant, il n'ont pas grand chose à craindre, excepté qu'on en parle big_smile
Et puis les renseignement de la video ne sont peut-être pas d'actualité.

Et puis vous pouvez devez lire les contrats avant de les signer non? Vous devez les avoir logiquement.


Vive le logiciel libre !! Articles aléatoires sur Wikipédia sur les logiciels libre, sur linux.

@amj@mastodon.xyz

Hors ligne

#1903 Le 16/09/2013, à 07:29

Rolinh

Re : /* Topic des codeurs [8] */

@tshirtman: merci smile

tshirtman a écrit :

J'ai été contacté pour un poste précis, assez chaud techniquement, et que ne convenait pas vraiment a mon profil (faut être bien plus calé en bas niveau que ce que je suis), j'avais clairement indiqué que ma spécialité, c'était le python, et j'ai eu des questions niveau C/système, >_> forcément, ça c'est moyennement bien passé.

Ok. Normalement le recruteur devrait m'appeler aujourd'hui afin de me préciser ce qu'il cherche. Je verrais à ce moment là si c'est intéressant.

@amj: juridiquement, ça me semble quand même un peu limite.

Hors ligne

#1904 Le 16/09/2013, à 13:29

Elzen

Re : /* Topic des codeurs [8] */

Hum. Petite question de propreté de code.

J'ai une classe qui doit afficher les résultats attendus, soit dans un fichier texte, soit sur la sortie standard :

public abstract class Printer implements Runnable {
	protected PrintStream out;
	
	public Printer(String printerId) {
		try {
			this.out = new PrintStream(Configuration.getFileName(printerId));
		} catch (Exception e) {
			this.out = System.out;
		}
		Runtime.getRuntime().addShutdownHook(new Thread(this));
	}
	
	public void run() {
		this.out.close();
	}
}

Puisque la variable out doit pointer sur le même flux tout au long du programme, je me dis qu'il serait plus logique de la passer en final. Sauf que si je fais juste ça, ça ne compile plus : le compilo refuse l'affectation dans le catch, en prétextant que la variable peut éventuellement avoir été déjà affectée dans le try (ce qui est rigoureusement impossible, mais bon, okay). Du coup, je modifie :

public abstract class Printer implements Runnable {
	protected final PrintStream out;
	
	public Printer(String printerId) {
		PrintStream out;
		try {
			out = new PrintStream(Configuration.getFileName(printerId));
		} catch (Exception e) {
			out = System.out;
		}
		this.out = out;
		Runtime.getRuntime().addShutdownHook(new Thread(this));
	}
	
	public void run() {
		this.out.close();
	}
}

Sauf que maintenant, ça compile bien, mais le compilo me met un warning comme quoi, attention, mon PrintStream local out n'est jamais fermé roll

À votre avis, vaut-il mieux que je laisse non-final, ou que je mette un @SuppressWarnings("resource") sur le constructeur ?

Edit : rectif code.

Dernière modification par Elzen (Le 16/09/2013, à 14:21)

Hors ligne

#1905 Le 16/09/2013, à 17:00

grim7reaper

Re : /* Topic des codeurs [8] */

Elzen a écrit :

prétextant que la variable peut éventuellement avoir été déjà affectée dans le try (ce qui est rigoureusement impossible, mais bon, okay)

Je ne parierais pas là-dessus.
Faudrait voir comment Java gère ça en interne, mais il y a sûrement une raison derrière ça.
Mais bon, autant je connais un peu le standard du C, autant pour Java je ne connais pas trop l’équivalent donc je serais bien en peine de te fournir une explication.
Après, c’est peut-être juste que le compilo’ est con mais je n’y crois pas trop (mais c’est possible hein big_smile)

Elzen a écrit :

À votre avis, vaut-il mieux que je laisse non-final, ou que je mette un @SuppressWarnings("resource") sur le constructeur ?

À mon avis j’aurais fait comme ça :

public abstract class Printer implements Runnable {
	final protected PrintStream out;
	
        public Printer(String printerId) {
            String filepath = Configuration.getFileName(printerId);
            if (Files.isWritable(Paths.get(filepath))) {
                try {
                    this.out = new PrintStream(filepath);
                } catch (FileNotFoundException err) {
                    // Impossible.
                }
            } else {
                this.out = System.out;
            }
            Runtime.getRuntime().addShutdownHook(new Thread(this));
        }
	
	public void run() {
		this.out.close();
	}
}

Mais peut-être que tu es bloqué sur du vieux Java (genre Java 6 qui ne permet pas de supprimer un fichier en une ligne de manière portable…, résolu en Java 7)

Hors ligne

#1906 Le 16/09/2013, à 18:33

Elzen

Re : /* Topic des codeurs [8] */

grim7reaper a écrit :

Je ne parierais pas là-dessus.
Faudrait voir comment Java gère ça en interne, mais il y a sûrement une raison derrière ça.
Mais bon, autant je connais un peu le standard du C, autant pour Java je ne connais pas trop l’équivalent donc je serais bien en peine de te fournir une explication.
Après, c’est peut-être juste que le compilo’ est con mais je n’y crois pas trop (mais c’est possible hein big_smile)

Bah, le bloc try ne contient qu'une seule ligne : techniquement, ce qui risque de lever une exception, c'est la récupération du PrintStream à partir de la configuration, qui devrait se produire avant l'affectation, vu que c'est son résultat qui est affecté. L'affectation est normalement la toute dernière opération effectuée dans ce bloc, donc si ça plante, ça plante avant elle. Enfin, il me semble.

grim7reaper a écrit :

Mais peut-être que tu es bloqué sur du vieux Java (genre Java 6 qui ne permet pas de supprimer un fichier en une ligne de manière portable…, résolu en Java 7)

C'est vrai que la classe Files est quand même sacrément utile. Je n'ai pas encore l'habitude de l'utiliser, mais il faudra que je m'y mette (d'autant qu'on a décidé de s'en servir en cours, pour arrêter de faire peur à nos petits étudiants avec des doubles buffers, et que c'est moi qui suis chargé de réécrire cette partie-là du cours ^^)

Après, en l'état, ton code ne compilera pas non plus si tu laisses le bloc catch vide : le compilateur n'est pas capable de se rendre compte que le bloc ne peut absolument pas générer d'exception, et donc râlera en disant qu'il reste un cas où la variable n'est pas affectée. Mais en rajoutant un « throw new RuntimeException(e.getMessage()); », ça passe smile

(En fait, finalement, j'ai légèrement modifié en faisant en sorte que ça n'utilise System.out que si la configuration n'est pas renseignée, et que ça déclenche l'exception si elle contient un nom de fichier non-inscriptible. C'est quand même mieux que de déclencher toute la simulation avec une sortie à un endroit pas attendu.)

Dernière modification par Elzen (Le 16/09/2013, à 18:37)

Hors ligne

#1907 Le 16/09/2013, à 18:40

grim7reaper

Re : /* Topic des codeurs [8] */

Elzen a écrit :
grim7reaper a écrit :

Je ne parierais pas là-dessus.
Faudrait voir comment Java gère ça en interne, mais il y a sûrement une raison derrière ça.
Mais bon, autant je connais un peu le standard du C, autant pour Java je ne connais pas trop l’équivalent donc je serais bien en peine de te fournir une explication.
Après, c’est peut-être juste que le compilo’ est con mais je n’y crois pas trop (mais c’est possible hein big_smile)

Bah, le bloc try ne contient qu'une seule ligne : techniquement, ce qui risque de lever une exception, c'est la récupération du PrintStream à partir de la configuration, qui devrait se produire avant l'affectation, vu que c'est son résultat qui est affecté. L'affectation est normalement la toute dernière opération effectuée dans ce bloc, donc si ça plante, ça plante avant elle. Enfin, il me semble.

Ça semble logique, mais on peut avoir des surprises avec la façon dont fonctionne les langages en interne parfois.
Donc je laisse le bénéfice du doute.

Elzen a écrit :
grim7reaper a écrit :

Mais peut-être que tu es bloqué sur du vieux Java (genre Java 6 qui ne permet pas de supprimer un fichier en une ligne de manière portable…, résolu en Java 7)

C'est vrai que la classe Files est quand même sacrément utile. Je n'ai pas encore l'habitude de l'utiliser, mais il faudra que je m'y mette (d'autant qu'on a décidé de s'en servir en cours, pour arrêter de faire peur à nos petits étudiants avec des doubles buffers, et que c'est moi qui suis chargé de réécrire cette partie-là du cours ^^)

Bah c’est tout Java NIO qui est sympa.
Parce que c’est vrai que jusqu’à Java 7, bah pour des trucs aussi basiques que les I/O Java était franchement pourri.

Elzen a écrit :

Après, en l'état, ton code ne compilerait pas non plus si tu laisses le bloc catch vide : le compilateur n'est pas capable de se rendre compte que le bloc ne peut absolument pas générer d'exception, et donc râlera en disant qu'il reste un cas où la variable n'est pas affectée. Mais en rajoutant un « throw new RuntimeException(e.getMessage()); », ça passe smile

Exact, j’avais pas fait gaffe >_<

Elzen a écrit :

(En fait, finalement, j'ai légèrement modifié en faisant en sorte que ça n'utilise System.out que si la configuration n'est pas renseignée, et que ça déclenche l'exception si elle contient un nom de fichier non-inscriptible. C'est quand même mieux que de déclencher toute la simulation avec une sortie à un endroit pas attendu.)

Oui, c’est carrément mieux comme ça.

Dernière modification par grim7reaper (Le 16/09/2013, à 18:41)

Hors ligne

#1908 Le 17/09/2013, à 19:50

Rolinh

Re : /* Topic des codeurs [8] */

Il y en a parmi vous qui ont déjà programmé en scala? Ce matin j'ai eu un cours ("foundations of software") avec Martin Odersky, le créateur de scala donc, et j'ai bien l'impression que je vais devoir m'y mettre un peu mais j'avoue que je ne sais pas vraiment à quoi m'attendre avec un langage fonctionnel orienté objets.

Hors ligne

#1909 Le 17/09/2013, à 20:43

grim7reaper

Re : /* Topic des codeurs [8] */

J’en ai entendu du bien, mais je ne l’ai jamais utilisé.
Niveau syntaxe ça risque de te dérouter un peu je pense. Tu as des exemples ici.

Alors, au final quel genre de trucs Google voulait te proposer ?

Hors ligne

#1910 Le 17/09/2013, à 21:37

Rolinh

Re : /* Topic des codeurs [8] */

Ouep, je trouve la syntaxe un peu déroutante (et j'en avais déjà eu un aperçu). Après, le langage semble être de plus en plus populaire donc il doit bien être intéressant d'un point de vue ou d'un autre (en espérant que ce n'est pas uniquement à cause de la compatibilité avec Java que les gens l'utilisent).

Pour Google, j'ai pour l'instant échangé plusieurs mails avec le recruteur et il me passera un appel vendredi pour me préciser sa proposition. A priori, faut connaitre Python, C, C++ et Linux et c'est pour un poste d'ingénieur logiciel mais je n'en sais pas plus pour le moment.

Hors ligne

#1911 Le 18/09/2013, à 20:02

Shanx

Re : /* Topic des codeurs [8] */

Bon, j’ai terminé le site pour uploader. Il manque deux choses :
  - pour l’instant, il n’y a aucune limite à ce qu’on peut envoyer. Faut-il que j’en instaure ? (rejet de certains types de fichiers, ce genre de truc) Si oui, quoi ?
  - et le fameux basculement sous SQLAlchemy, mais là j’ai peur d’avoir du mal…


Mes randos : grande traversées des Alpes, de l'Islande, de la Corse, du Japon (en vélo), etc.
Traversée des États-Unis à pied

Hors ligne

#1912 Le 19/09/2013, à 10:17

The Uploader

Re : /* Topic des codeurs [8] */


- 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

#1913 Le 19/09/2013, à 20:16

Rolinh

Re : /* Topic des codeurs [8] */

@Shanx: pour la limite, à toi de voir... pourquoi tu le ferais? Quels genre de fichiers tu ne voudrais pas accepter et pour quelle raison? Auras-tu des problèmes de stockages? etc.
Pour SQLAlchemy, on est toujours là. wink

Hors ligne

#1914 Le 19/09/2013, à 20:30

Kanor

Re : /* Topic des codeurs [8] */

@shanx, je pense que tu peux rajouter une notion de quota (si c'est pas déjà fait), un truc intéressant en passant il existe une api pour connaître la taille du fichier dans le navigateur avant de l'envoyer ça permet de ne pas se faire refuser son fichier après 15 min de chargement.
https://developer.mozilla.org/en-US/doc … /File.size
et tu peux aussi rajouter dans l'écran d'administration les fichiers autorisé (c'est peut être pas nécessaire pour une première version)

Hors ligne

#1915 Le 23/09/2013, à 20:54

Rolinh

Re : /* Topic des codeurs [8] */

UB et integer promotion (simple mais intéressant néanmoins): The clqt story.
D'ailleurs, je comprend pas pourquoi le prototype de sa fonction donne uint64_t comme type de retour alors que la valeur retournée est de type uint32_t.

Hors ligne

#1916 Le 23/09/2013, à 21:32

grim7reaper

Re : /* Topic des codeurs [8] */

Simple mais intéressant comme tu le dis.
Tiens c’est marrant que tu postes ça maintenant (signed overflow et détection possible avec clang), parce que ce matin j’en ai justement parlé ici (en déclenchant au passage un débat std::endl vs \n qui a été extrait dans un sujet à part par un modo’ ^^')

Hors ligne

#1917 Le 25/09/2013, à 08:49

The Uploader

Re : /* Topic des codeurs [8] */

Résultats:
candidat super, mais trop geek. Travail d'équipe, tout ça.

Bon maintenant faut que je trouve des loisirs non-informatiques qui prouvent que je vois parfois le soleil, et que même parfois il ne s'appelle pas soleil.jpg


- 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

#1918 Le 25/09/2013, à 09:38

grim7reaper

Re : /* Topic des codeurs [8] */

The Uploader a écrit :

Résultats:
candidat super, mais trop geek. Travail d'équipe, tout ça.

Bon maintenant faut que je trouve des loisirs non-informatiques qui prouvent que je vois parfois le soleil, et que même parfois il ne s'appelle pas soleil.jpg

facepalm.png
Ok, boîte de merde

« Vous êtes un super candidat, mais bon vous voyez vous aimez ce que vous faites et ça fait de vous un geek (dans tout les autres domaines on parle plutôt de passionnés, mais ça fait moins peur). De part mon bonus +42 en préjugés moisi, je sais donc que vous êtes un vieil asocial qui code seul tout nu au fond de sa cave. Il est donc impossible pour vous de travailler en équipe (pourtant il me semble que dans ton dernier stage tu étais au sein d‘une équipe pour un truc en rapport avec les méthodes agiles, non ?).
De plus grâce à mon absence de logique totale, je base mon jugement sur vos loisirs (les trucs que l’on fait hors du boulot…) et non pas sur vos précédentes expériences pro’. »

I...hmmm...nevermind.gif

Ça fait bien chier ça, retour case départ du coup hmm
Bon courage (plus ça va, plus je me dit que mon prochain taff‘ je vais pas le chercher en France)

Hors ligne

#1919 Le 25/09/2013, à 09:44

Dr Le Rouge

Re : /* Topic des codeurs [8] */

Mon labo cherche un doctorant avec profil « bon en info théorique et ayant des connaissances en embarqué », le but étant de bosser sur des algorithmes cryptographiques destinés à tourner sur du matériel (très) peu puissant.

Je dis ça, je dis rien big_smile


C'est deux suites de Cauchy qui veulent aller à la soirée 'no limit'. Hélas, à l'entrée le videur leur dit : "désolé, c'est complet !".
mon site perso (π²/6.fr) et mon blog

Hors ligne

#1920 Le 25/09/2013, à 09:54

The Uploader

Re : /* Topic des codeurs [8] */

En gros j'suis pas assez sociale (alors que j'ai déjà travaillé en équipe, et qu'on a parlé de mes stages). neutral

grim' a écrit :

(pourtant il me semble que dans ton dernier stage tu étais au sein d‘une équipe pour un truc en rapport avec les méthodes agiles, non ?).

Une petite équipe de deux qui essayait d'appliquer plus de principes Agile (pour sauver un projet où le client ne faisait pas de retours). Genre, livrer très régulièrement, utiliser un tableau bien visible pour voir qui fait quoi en un clin d’œil, tout ce qui nous semblait bon à prendre. ^^

Mais oui ils font de l'Agile là où j'ai ... candidaté (ça existe ce mot ?) et j'ai parlé de mon mémoire sur les méthodes Agiles, etc.

Le Rouge a écrit :

Mon labo cherche un doctorant avec profil « bon en info théorique et ayant des connaissances en embarqué », le but étant de bosser sur des algorithmes cryptographiques destinés à tourner sur du matériel (très) peu puissant.

Je dis ça, je dis rien big_smile

J'suis pas très fort en maths, mais ça me gêne pas d'apprendre sur le tas. Et j'suis un fan de matériel pas puissant (enfin surtout du matériel faisant partie de l'histoire de l'informatique ^^), même si j'ai pas beaucoup d'expérience dans l'embarqué, ça fait quelques mois que je fais un retour aux sources un retour au C. Ça change du bloated Web.
Tiens si tu as des ressources pour améliorer le niveau en maths de quelqu'un, c'est quelque chose dont j'aurais besoin. smile

Dernière modification par The Uploader (Le 25/09/2013, à 12:17)


- 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

#1921 Le 25/09/2013, à 10:46

HP

Re : /* Topic des codeurs [8] */

grim7reaper a écrit :

[…] plus ça va, plus je me dit que mon prochain taff‘ je vais pas le chercher en France

plus ça va, plus je me dit que mon prochain taff‘ je vais pas le chercher en informatique !


cat /dev/urandom >/dev/null 2>&1 #github

Hors ligne

#1922 Le 25/09/2013, à 10:56

grim7reaper

Re : /* Topic des codeurs [8] */

Le Rouge a écrit :

Mon labo cherche un doctorant avec profil « bon en info théorique et ayant des connaissances en embarqué », le but étant de bosser sur des algorithmes cryptographiques destinés à tourner sur du matériel (très) peu puissant.

Je dis ça, je dis rien big_smile

Par bon en info‘ théorique, ça sous-entends info’ théorique rapport à la crypto‘ je suppose (donc des maths assez poussé), nan ? ^^"

Dernière modification par grim7reaper (Le 25/09/2013, à 10:57)

Hors ligne

#1923 Le 25/09/2013, à 13:18

Elzen

Re : /* Topic des codeurs [8] */

J'suis assez perplexe.

Je suis en train de nettoyer un jeu de données issu d'une collecte RSS, en vue de lancer des recherches par mots-clefs dessus, donc j'essaye de virer tout ce qui est balises XML résiduelles à l'intérieur des descriptions, ainsi que tout ce qui est accentuations, caractères spéciaux et problèmes de casse. J'ai donc écrit la fonction suivante :

def clean(msg):
	step,res = "",""
	while len(msg) > 0:
		if msg.startswith("<") and not msg.startswith("< "):
			p = msg.find(">")+1
			if p > 0:
				msg = msg[msg.find(">")+1:]
				continue
		step,msg = step+msg[0],msg[1:]
	for word in step.split(" "):
		word = ''.join(x for x in unicodedata.normalize('NFKD',
			word.decode()) if x in string.ascii_letters).lower()
		if word != "": res += " "+word
	return res[1:]

La ligne à l'intérieur du for permettant le gros du boulot, je l'avais récupérée au hasard sur le net, et elle avait toujours donné de bons résultats jusque là.

Je lance donc mon script (avec un simple « python clean.py ») qui ouvre les différents fichiers (un simple « open(filename, "r") »), les parcours ligne à ligne et réenregistre à côté les descriptions RSS nettoyées. Et là, bam :

Traceback (most recent call last):
  File "clean.py", line 47, in <module>
      fw.write(clean(doc[3])+"\n")
        File "clean.py", line 17, in clean
	    word.decode()) if x in string.ascii_letters).lower()
	    UnicodeDecodeError: 'ascii' codec can't decode byte 0xc2 in position 6: ordinal not in range(128)

WTH ? Mais c'est justement une ligne pour transformer les caractères spéciaux en caractères ascii normaux, ç'pas normal qu'il plante à chaque caractère non-ASCII yikes

Et puis, à tout hasard, je lance l'intérprêteur Python seul, et je tente d'importer mon script dedans, et là ça, ça passe nickel, il est toujours en train de tourner (il y a beaucoup de données) et toujours pas de plantage.
Du coup, je suis en train de me demander, à la fois, pourquoi est-ce que ça ne marche pas en appel direct, et qu'est-ce que le fait de passer par l'interprêteur a changé qui refait marcher ça :s

Hors ligne

#1924 Le 26/09/2013, à 13:29

The Uploader

Re : /* Topic des codeurs [8] */

Why mobile web apps are slow

Dernière modification par The Uploader (Le 26/09/2013, à 18:49)


- 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

#1925 Le 26/09/2013, à 18:01

grim7reaper

Re : /* Topic des codeurs [8] */

Très intéressant (bon j’ai un peu survolé l’article vu sa longueur, mais j’ai lu un peu plus en détail la partie sur les GC et c’était intéressant).

Hors ligne