# a programming tale carnet de voyage de mon sejour à 42us 6 jan - [[mtl 2 chicago 2 dallas 2 san jose]] 7 jan - [[1ier jour de pluie / japantown]] 8 jan - [[2ieme jour de pluie / fremont]] **WEEK 1** 9 jan - [[day00]] 10 jan - [[day01 - unix]] 13 jan - [[exam00]] [[git commit history highlight week 1]] **WEEK 2** 19 jan - [[day07 - les gens]] 22 jan - [[exam01 - la machine]] - [[`//encryPted mes'$'age//->e1]] [[git commit history raw week 2]] **WEEK 3** 23 jan - [[day10 - pointeur sur fonction]] 25 jan - [[day12 - la quête pt.1]] 28 jan - [[post-exam02 - weekend->weekend]] **WEEK 4 ** 30 jan - [[BSQ - les cartographes->bsq-intro]] 31 jan - [[BSQ - all fires->pianoyvonne]] 2 fev - [[repos - la quête pt.2->la quête pt2]]<img src="http://yuvaanwebtech.com/images/new.gif"></img> 3 fev - [[examFinal - examFinal]]<img src="http://yuvaanwebtech.com/images/new.gif"></img> **SANTA CRUZ** 6 fev - [[le retour - la quête pt.3->la quête pt3]]<img src="http://yuvaanwebtech.com/images/new.gif"></img> 5am à l'aréoport de mtl stressed pour les douanes, comme d'habitude même si j'ai pas de dossier ou rien 25 minutes de file 7 secondes d'interrogation sleepy not sleepy [[taking of à 7am]]vol rapide à chicago. les nuages ressemblent à un top de paté chinois. c'est drole d'imaginer les villes d'en haut, pis de trouver une fonction à chaque building, sim city 2000 sleepy not sleepy 1 done [[2 to go]]voler jusqu'à dallas en écoutant <a href="https://www.youtube.com/watch?v=HQljxhGGf9c">court of sword</a> ft. <a href="https://www.youtube.com/user/day9tv">day9</a>, ça fait du bien d'entendre ma routine, d'entendre du monde jouer l'aventure, et rire. l'avion monte plus haut cette fois, pourquoi le pilote nous donne l'altitude à laquelle on vole? can't relate really. j'lis le livre que piiper m'a donner pour noel et on y parle de game developement en 1990. j'apprécie leurs idées simples, sans prétention. 2 down [[1 to go]]small truck planeyard une grande cour intérieur et extérieur dans un champ. les camions y passe partout sans coordination logique sur un grand terrain de jeu ou les lignes n'ont (pas?) d'importance 24 heures de truck de pick-up coupé de trailer busté de coat de pluie qui travaille dans un aeroport? qui travaille dans une station spatiale? [[plane to san fran]] dernier avion le vol dure deux heures trente plus l'heure de décalage. j'me rend compte que je traverse le nevada en regadant les petits terrains isolés et illuminés au sol et que je traverse pas mal tous le pays en semi-dormant. est-ce worth it de traverser un pays? d'aller loin? est-ce pas égoïste de pouvoir traverser le monde sans réellement le parcourir ou le connaitre? le vol est long. sleepy not sleepy. *i'm not in love with the modern world i'm not in love with the modern world* de mon pixel phone à mes oreilles [[direction_à silicon valley]] le temps est doux je taxi jusqu'à mon airBnB. et j'me dis; *"je suis en californie".* je dépose mes trucs chez joel et me dirige en marchant vers Santana Row, l'endroit le plus nice de San Jose selon lui. y fait encore doux, doux camping. je marche seul, sur un boulevard qui aurait pu être à Laval, pour arriver à Sanatana Row, qui ressemble un peu au carrefour Laval, mais version un peu plus baller: gucci, maserati, lambo, tesla dealer des shops de talon-haut overpriced une mêre et sa fille en coat de léopard check une sacoche j'fini par manger dans une place de burger parce que 2 gars avec des skates mangent sur la terasse, pis j'me dis que ça doit être cheap. c'est pas cheap. un afgan s'assoit au bar y'est très nasty, pis y dis qu'y'a couché avec toute les belles femmes de san jose. j'm'en va du carrefour laval pis [[j'me couche->main]]. y fait gris pis y pleut encore habitué à la températude de mtl, je sors avec mon coat par dessus un hoodie. j'ai pas froid mais j'ai pas chaud. la pluie est différente, c'est de la pluie de camping. celle qui mouille le gazon, pis qui coule sur les arbres. j'ai une copie offline du centre-ville sur mon telephone j'me dirige vers [[japantown]] j'me dirige vers le [[centre-ville]] japantown est au nord du centre-ville <img src="https://lerabot.neocities.org/programmingtale/maison.jpg" width="500"> plus on s'éloigne, plus ça s'appauvrit. les maisons sont vieilles, en bois et les gens ont milles trucs sur leur terrain: jouet pour enfant, mini-jeep, chaises brisés, en plastique ou en bois, des décorations de noel des branche de palmier gigantesque des poèles, des assiètes. *"à montréal tu laisses rien dehors sur ton terrain random"* [[une track de chemin de fer me fait penser à mon coin]] le centre-ville me semble gros avec ses buildings massifs des buildings, des lexus, des SUVs. pas beaucoup de gens marchent et un bonne partie des gens dans la rue sont sans-abris. *"y fait moins froid qu'à montréal au moins... :\ "* c'est gris encore, et c'est un peu désolant. [[je cherche un café cheap]]<img src="https://lerabot.neocities.org/programmingtale/ruelle.jpg" width="500"> en prenant des photos, un bonhomme vient me voir. c'est Mark, il dit que tout le monde prend des photos de sa porte. je lui dit que je viens de Montréal pis que j'aime les portes. [[il trouve ça drole.->truck]] <img src="https://lerabot.neocities.org/programmingtale/truck_cheaprender2.png" width="500"> [[y pleut encore->almost_japan]]j'arrive finalement à japantown les maisons n'ont pas changé mais certaines ont des décorations traditionelles. sur la rue principale, y'a plusieurs restos, magasin de vaisselle, épicerie, un shop de tattoo. je m'arrete chez komeko pour un ramen, puis dans un antique shop. leur game de poterie est très on point. j'ai envie d'acheter un set de 2 mini-tasses et carafe(?) à sake. 2 mini -tasse pour 2 personnes. on verra dans un mois. j'achète des auto-collants de fastfood #teambédaine à 1.25$ [[bye vieille madame]]en sortant je tourne sur une autre rue random et je tombe sur ça <img src="https://lerabot.neocities.org/programmingtale/Japantown_animekingdom_low.jpg"> le bonhomme me raconte que son shop marche pu autant qu'avant à cause des eBooks. il me raconte d'autres choses aussi mais je comprend plus ou moins. il rit pas mal et je trouve ça drole en disant *"yeah... ya"* j'aurais voulu acheter lupin III mais y'avait pas le premier tome fak [[je quitte->centre-ville]].je tombe sur Philz Coffee près de l'université de San Jose. le barrista est désolé de m'annoncer qu'ils ne font pas d'américano, mais une variété de pour-over a 4.50$, je commande n'importe quoi et le gars fait des steppettes avec un shaker remplis de grain de café. impressive. j'hang out là-bas un bout parce que [[je sais pas trop quoi faire à 4h pm]]. le temps passe, pis j'me rammasse dans l'équivalent du TRH-Bar. j'commande une bière pis j'écoute la game des sharks en même temps d'installer Tinder ;) j'swipe 5 personnes pis je trouve ça ridicule un dude me demande c'est quoi [[function roby()]]je me retourne: *"oh it's a just a shirt I made, I work as a FabLab tech and we did a summer camp with the kids, they all had to make their own."* on se présente, il me dit qu'il s'appelle Son en pointant le ciel. moi je m'appelle Roby -> function roby(). on jase pas mal: il travaille avec des *disabled people*, particulièrement des ados/jeunes adultes. il à 31 ans. il habite à San Jose depuis toujours. y'a pas Facebook. son ami/co-worker Earl fini par arriver. Earl est smooth. Earl parle pas super fort. Earl fini son doctorat. Earl boit plus vite que nous mais on s'en rend vraiment pas compte. je suis vraiment content de hang out avec eux. Son essaie de cruiser des filles pendant que moi et Earl on parle de son projet de fonder une école. il revient une fois de temps en temps, un peu gené: *"ahh man I don't know... I think she might have a boyfriend or sumthing"*. il met une toune dans le jukebox, on prend une dernière bière [[en attendant sa toune]].on the way, on se prend des straw-ber-ritas <img src="https://lerabot.neocities.org/programmingtale/son.jpg" width="500"> [[shit's getting LIT]]on fini dans un resto bar aver un dancefloor. vibe un peu Square-Victoria fancy. ça get dancy real quick pis Son et moi sortons nos dance-moves. les miens sont un peu sketch, comme à l'habitude lui, y'es insane. Son s'envoie des maneuvres de breakdance NEXT-LEVEL. j'me rapelle pas dans ma vie, avoir vu un dude spinner sur sa tête dans un restaurant. LIT AF. la crowd cheerait-up, earl souriant, les chicks trouvaient ça drole, pis une autre crew est venu nous montrer ses moves: **y'on toute choker.** j'me sentais dans danse ou crève 3 et rendu à l'apex de ma soirée, y fallais que [[je catch le dernier bus.]] c'est long. Son décide d'aller tenter sa chance avec 2 chicks. 3 minute plus tard: *"hey this is my buddy earl and this guy is a canadian named Roby, he has a sick shirt!"* j'ai maintenant 4 amis :) la toune de Son arrive jamais fak on fini par quitter le TRH-bar/cinebar pour [[aller dancer]].j'ai dis bye à tous le monde, je les ai serré dans mes bras. y pleuvait encore le dernier bus passait à 1am, pis [[y'était rendu 1h45.->main]] à matin, c'est pas de la pluie de camping. c'est le déluge. je me réveille avec un message texte de Son: *"you crazy ass canadian!!!"* je quitte le airBnB avec mon gros sac vers midi je me rend au [[musée d'art de San Jose]] je me rend au [[terminus pour prendre le bus vers Fremont]]<img src="https://lerabot.neocities.org/programmingtale/chenille.jpg" width="500"> -living bio stuff -futur -aider la nature en s'en inspirant -formes natuelle, animale, insecte -systeme de survie -adapter nos méthodes à ceux des autres espèces vivantes/ne pas imposer nos méthodes [[nature/machine]]je me rend vers le transit pour le bus de Fremont, encore sous la pluie. 181 direction Fremont, 47 minutes, 5 personnes je quitte San Jose en passant par différent cartier de plus en plus délabrés, sur le bord des autoroutes, on voit des grandes baches accrochés aux arbres en guise d'abrit. le ciel est gris, gris thick, et ténébreux et le soleil se couche. les autouroutes sont massives, au loin, une structure blanche émerge, plus blanche et plus claire. 5 grandes lettres noires, aux traits futuristes T E S L A marquent l'immense facade loin du ciel bleu de Montréal, j'ai un apercu de la vallée, doom-vibes reignent dans les montagnes brumeuses. [[on dépasse l'usine T E S L A]] <img src="https://lerabot.neocities.org/programmingtale/robot.jpg" width="500"> -mythe (un vrai) -massif (la taille, imposante) -gigantesque slab de polyeuréthane (?) coulé, reluisante, sur des arbres (les pattes) -2 structures, retro-futur, déchets, dépassés. -mécaniques : les moteurs donne un impression de mouvement sur la bande magntique (un pont? un cable?) -signaux : le cable branché vers le sol noir et luisant, puise quelque chose? est connecté? -landscape minimal [[systeme/map]]<img src="https://lerabot.neocities.org/programmingtale/map.jpg" width="500"> -akira -une carte, des routes -un système pour y naviguer, inconnu de nous, chaotique (semble chaotique) -bird eyes view -stratégie/organisation -désorganisation [[bold/draw()]]<img src="https://lerabot.neocities.org/programmingtale/bold.jpg" width="500"> -couleurs/noir -dessin! -sleepy eyes collage game parfait -je dessine toujours avec des crayons fins, tenter des gros traits nasty. -notion de sampling: pour sampler il faut regarder et savoir regarder. je regarde pratiquement plus rien [[bork/a new bork?]]<img src="https://lerabot.neocities.org/programmingtale/bork.jpg" width="500"> -are those borks???? :D -couleurs, feel de textile -ils sont des représentations de sculptures, mais sont aussi des dessins, et possiblement des borks -jovial/fun/déformés -a funky collection of friends -piiper alert! -leur dialogue? leur dialecte? [[time to go->terminus pour prendre le bus vers Fremont]] on continue dans la vallée, et sa continue de s'assombrir j'entre dans une ville que je connais pas, sans pouvoir m'y orienter et sans la voir. [[je débarque du bus/arrivée à 42us]] je marche dans les rues vides de la californie il pleut toujours dans la pénombre, au loin, quelques silouhettes se dirigent vers un batiment aux milles néons *"j'y suis enfin"* [[entrer à 42us]]dans un lobby, quelques gens discutent. à la réception, un petit groupe semble gérer les nouveaux arrivants. après quelques mots, je remarque leur fort accent. *"...des français."* je prend une clé, une carte, et je me dirige vers ma chambre. la chambre a des allures de vieux motel, sans la télé et le tapis, sans drap, couverture ou oreillers pour le reste c'est pareil. [[je dépose mon sac et part vers la cantine.]] dans la cantine une trentaine de gens sont assis à différentes tables et discutent et mangent, sans savoir trop à quoi s'attendre. je m'assois à un table et je les écoute: des allemands, un péruvien, un gars de la macédonie, mexicains, peruviens, américains. tous assis à la même table, un peu confu. personne ne sait ce qu'on fait demain, personne ne sait qui est qui mais presque personne n'est seul Jane à fait 9000km pour venir ici et nous parle de ses mésaventures à San Francisco Giovanni rit nerveusement Jibran aussi. *"on a tous pas mal voyagé pour s'en venir ici, quitter nos emplois pour certain, nos amis pour d'autre, en sachant à peu près rien sur ce qui nous attend..."* un habitué vient nous voir et nous suggère d'aller nous reposer pour demain. [[on va en avoir besoin]] ma chambre est fraiche et j'entend la pluie à l'exterieur c'est appaisant je m'allonge dans la pénombre et je réfléchis à comment je suis arrivé ici d'un article de blog lu en juillet à une note dans un hackpad que j'ai laissé trainer puis à un test en ligne que j'ai laissé trainer puis complèter à un e-mail recu en fin septembre à un billet d'avion puis 3 avions vers san jose dans un bus dans la vallée jusqu'à ici ça commence demain [[zzz->main]]unix basic commands pwd(mouseover: "pwd")[ -current path ./who/knows] ls man(mouseover: "man")[ -le manuel] rm(mouseover: "rm")[ -remove, supprimer] touch(mouseover: "touch")[ -si seulement] cat cp mv chmod sed(mouseover: "sed")[ -[[stream editor]]] grep tr cut ldap |(mouseover: "|")[ -pipe, passer une information] > (mouseover: "manuel")[ -[[la seule vérité]]] **e1z1r5p12% > cat pipper1.txt | sed 's!should!will!' | sed 's!e!#!g' | sed 's!a!b!' | sed 's!i!":)"!g'** borks bnd p":)"":)"p#r w":)"ll surv":)"v# la f":)"n du mond# qu":)" occup# m#s cauch#mars nu":)"t après nu":)"t d#pu":)"s xactly l# jour d# ton départ. **e1z1r5p12% > cat pipper2.txt | sed 's!should!will!' | sed 's!e!#!g' | sed 's!a!b!' | sed 's!i!":)"!g'** don't worry p":)"pp#r, w#'ll mbk# ":)"t! l#t th# bork com#, l#t th#m com# through you, wh#th#r th#y'r# happy borks or not. l#s borks t# protèg#nt, ":)"l sont av#c to":)". ça fa":)"t du b":)"#n d'êtr# a":)"ll#ur, ma têt#/<3 ava":)"t b#so":)"n d# ça. j# p#ns# à r":)"#n, sauf à êtr# ":)"c":)". j'a":)" auss":)" m#s mom#nts w#ak#tt# #mo v":)"b#s. you'r# my guts, am I gr":)"ffth or puck? #FREEGRIFFTHFROMHELL. can w# pl#as# watch th#s# 2g#th#r? j# m'#nnu":)"# d# ta prés#nc#. [[gotta love sed->main]] cd ex01 cd mkdir cd cd .. cd ls cd cd cd cd ls ls-a cd ls cd .. cd Day01/ex02 cd vim cd vim cd cd vim vim ls ls ls vim git add git commit -m "Added testDay00 exercise, tried to [[follow the rules]]" cd cim gcc cd [[echo]] cd cd ls ls -la chmod cd cd mv mv cd cp ls ls -la cd vim vim cd vim gcc -o test ls cd cd vim cd ls -l chmod git add git commit -m "ex04 added. hopefully the 4 first live will never be taking into account" cd cd.. cd ex03 cd vim find_people.sh cd ls -l cd cd vim cd gcc cd ./find_people.sh git vim vim vim vim ./find_people.sh git add git commit -m "finding sh, finding people, what are we gonna find next?" git push (click: "find_people.sh")[[[find people->find people]]] `find . -type f -name "uid" | sed 's#.*/##' | ] ` on est environ 150 ici, certains viennent du coin, d'autres d'Afrique, du Perou, d'Asie, de Paskistan, etc. tout le monde est nouveau, tout le monde commence, et l'entraide reigne. personne n'est laissé pour contre, sauf celui qui reste à l'écart. *"we're all in this together anyway right?"* rencontrer tout ce beau monde me fait enormément plaisir. [[13 heures plus tard->main]] #Consignes • Seule cette page servira de référence : ne vous fiez pas aux bruits de couloir. • Le sujet peut changer jusqu’à une heure avant le rendu. • Les exercices sont très précisément ordonnés du plus simple au plus complexe. En aucun cas nous ne porterons attention ni ne prendrons en compte un exercice complexe si un exercice plus simple n’est pas parfaitement réussi. • Attention aux droits de vos fichiers et de vos répertoires. • Vous devez suivre la procédure de rendu pour tous vos exercices. • Vos exercices seront corrigés par vos camarades de piscine. • Enplusdevoscamarades,vousserezcorrigésparunprogrammeappelélaMoulinette. • La Moulinette est très stricte dans sa notation. Elle est totalement automatisée. Il est impossible de discuter de sa note avec elle. Soyez d’une rigueur irréprochable pour éviter les surprises. • Les exercices shell doivent s’exécuter avec /bin/sh. • Vous ne devez laisser dans votre répertoire aucun autre fichier que ceux explicite- ment specifiés par les énoncés des exercices. • Vous avez une question ? Demandez à votre voisin de droite. Sinon, essayez avec votre voisin de gauche. • Votre manuel de référence s’appelle Google / man / Internet / .... • Pensez à discuter sur le forum Piscine de votre Intra ! • Lisez attentivement les exemples. Ils pourraient bien requérir des choses qui ne sont pas autrement précisées dans le sujet... [[*"facile?"*->main]]*e1z1r5p12%* echo "echo" echo *e1z1r5p12%* echo "ça écrit dans le terminal" ça écrit dans le terminal *e1z1r5p12%* echo "j'imagine que je peux me laissser des notes avec ça" j'imagine que je peux me laissser des notes avec ça *e1z1r5p12%* echo "parce que clairement que l'ordinateur comprend rien à tout ça" parce que clairement que l'ordinateur comprend rien à tout ça *e1z1r5p12%* echo "sed est quand meme wise, mais pourrais jamais catché s'qu'on dit." sed est quand meme wise, mais pourrais jamais catché s'qu'on dit. *e1z1r5p12%* echo "ptete que parler tout croche, c'est une defense contre la reconaissance de pattern?" ptete que parler tout croche, c'est une defense contre la reconaissance de pattern? *e1z1r5p12%* echo "le queb slang comme crpyto!!??" le queb slang comme crpyto!!?? *e1z1r5p12%* echo "punkLab encryption project coming soon" punkLab encryption project [[coming soon->main]]un peu comme une plaque de marbre ancienne 1980? le vrai knowledge est dans le man(nuel). *"how do you subtitute"* *"t'as tu checker le man?"* jamais, jamais, on check le manuel on lit pas, on va trop vite, parce que tout est fait pour être simple sans qu'on aille à comprendre l'essence des choses faut apprendre à faire des choses sans le fake knowledge de forum cheap parce que norminette le laissera pas passer anyway le man le dit le man sait si tu sais pas d'quoi check le man, (ou demande?) mais juste si tu sais pas d'quoi de compute-related parce que pour le reste y'en a pas de man quand tu feel pas ou que les choses deviennent moins claires, moins binaire, moins *if( 'statement') result* moins disney plus tarko, moins rationel, plus vrai faut apprendre à faire des choses lentement faut apprendre à échouer à recommencer le man c'est pour l'ordi mais la vérité c'est que ya du knowledge dans l'vieux mais qu'on apprend rien si on essaye rien [[assez->main]]aujourd'hui c'est l'exam00 et ça se sent. pratiquement tout le monde coule les exercices réguliers, d'une part parce que les explications sont vagues d'une autre parce que dès qu'on échoue une question, le reste ne compte pas. mes résultats so far: day00 : 0% day01 : 5% day02 : 0% day04 : 0% même si j'ai complété environ 75% des travaux à faire. des erreurs d'inattentions, encore et encore. [[le gens sont fébriles]]Gio capote un peu, entre ses exercices de la veille, pis la théorie d'aujourd'hui: *les pointeurs.* les wizards révisent leurs fonctions en groupe, se corrigeant entres eux. Sergio et les vieux, savent déjà à quoi s'attendre. Ils ont fait l'exam v'la 3 mois, mais ne sont visiblement pas des cadets encore. Yvonne me pose des questions sur des trucs de base, des choses apparentes, ne comprennant pas vraiment comment un programme fonctionne. je prend mon temps pour lui expliquer: *une fois compilé, le programme commence par le main, puis descent dans le code, ligne par ligne, jusqu'à ce qu'il retourne quelque chose* ses yeux, eux, ne [[retournent]] rien de rassurant. le concept de retour peut être compliquer à comprendre. chaque fonction, sauf les voids, retournent quelque chose- un nombre entier, un char, pointeur, etc. chaques fonctions que l'on crée doit, techniquement, avoir une raison d'être. chaque ligne de code doit avoir sa place, sinon elle est considéré comme nuisible, inutile. étant donné que l'on vient de commencer, nos fonctions sont plutôt simples et ne comporte qu'une 15aines de lignes, tout au plus, elles sont lisibles et clair. [[mais pas pour tout le monde]] la journée avance et les discussions ne tournent qu'autour de l'exam00. *"I wonder if they'll ask about unix stuff.."* *"so, the star thing if for pointers right?"* je regarde mes nouveaux amis, ils sont un peu paniqué, sauf Jibran et Julio. je sais que certains d'entre eux seront clueless et n'auront aucunes bonnes résponses. selon les rumeurs, on progresse dans l'exam00 comme dans nos projets, si on échoue une (2) questions : c'est terminé. beaucoup des gens que je cotoie auront 0. [[qui sait, j'aurai peut-être 0 aussi.]]vers 5h, on doit quitter le lab pour 1 heure, question qu'ils setupent l'exam00. 1 heure PAS devant un ordinateur! ouchi! toute la piscine est à la cantine. [[on mange notre dernier repas avec le premier saut]]user : exam pass : exam iterm2 kinit rprovost password : ********* examshell [[ENTER]]{(set: $w to 20)(set: $note to 0)(set: $q1 to true)(set: $result to "NO RESULT YET")} ###$result 3H55MIN LEFT. THIS QUESTION IS WORTH **$w** POINTS YOU CURRENTLY HAVE **$note** POINTS WRITE A FUNCTION THAT PRINTS ONLY 'A' IN THE TERMINAL echo 'x' echo 'a' echo 'A' (click: "echo 'x'")[(set: $w to it -5)(set: $result to "FAILED")(goto: "question 2")] (click: "echo 'a'")[(set: $w to it -5)(set: $result to "FAILED")(goto: "question 2")] (click: "echo 'A'")[(set: $result to ">>>SUCCESSS<<<")(set:$note to it + $w)(goto: "question 2")] ###$result 1H53MIN LEFT. THIS QUESTION IS WORTH **$w** POINTS YOU CURRENTLY HAVE **$note** POINTS WRITE A FUNCTION THAT PRINTS THE ALPHABET IN REVERSE. ft_malpha.c ft_revalpha.c ft_putstr.c (click: "ft_malpha.c")[(set: $w to it -5)(set: $result to "FAILED")(goto: "question 3")] (click: "ft_revalpha.c")[(set: $result to ">>>SUCCESSS<<<")(set:$note to it + $w)(goto: "question 3")] (click: "ft_putstr.c")[(set: $w to it -5)(set: $result to "FAILED")(set:$note to it + $w)(goto: "question 3")] ###$result 24MIN LEFT. THIS QUESTION IS WORTH **$w** POINTS YOU CURRENTLY HAVE **$note** POINTS WRITE A FUNCTION THAT SWAPS THE VALUE OF A AND B. ft_tornado.c ft_swap.c ft_changevalue.c (click: "ft_tornado.c ")[(set: $w to -42)(set: $result to "FAILED")(set:$note to -42)(goto: "ft_tornado")] (click: "ft_swap.c")[(set: $result to ">>>SUCCESSS<<<")(set:$note to it + $w)(goto: "question 4")] (click: "ft_changevalue.c")[(set: $w to it -5)(set: $result to "FAILED")(goto: "question 4")] ft_tornado.. vraiment? YOUR SCORE IS NOW $w. BRAVO. [[YOU $result.->question 4]]###$result NO TIME LEFT YOU FINISHED EXAM 00 WITH **$note** POINTS. [[EXIT EXAMSHELL->main]] ce matin, il y avais pas mal moins de monde habituellement, j'arrive vers 9h et on doit etre une trentaine. ce matin, on était plus prêt de 15-18. puisqu'on était 130 au début, j'ai peine à identifier qui a réellement quitté; je discute avec les même 20-30 personnes. en parlant de la situation des dorm avec Anastasia ce matin, (les dortoirs sont pleins, donc des gens arrivant d'outremer sont obligés de dormir sur des banquettes dans le lounge.) je mentionne Lamine, un francophone venant du Niger avec qui j'ai passé un avant-midi ou deux. en parlant, je cherche Lamine rapidement dans la pièce. je me rappelle qu'il se sentait un peu malade: *"la pluie m'a frappé! j'te le dis, la pluie m'a frappé!"* j'en parle à Anastasia qui me répond qu'il est présentement à l'hôpital. elle me dit qu'il a une pneumonie. je cherche sur l'intra pour trouver son numéro de téléphone, histoire de voir si tout va bien. son numéro comporte 1 chiffre de trop. on est un peu embêté. je remarque également que son ETEC (date de fin de stage) équivaut à 0. le mien, et celui de tout ceux encore présent est de 17. [[17 jours.]]ça fait 10 jours que je suis ici. 10 jours que j'apprend à programmer le langage C. le C est une vieille langue. sur le plan technique, le C est le fondement d'autres langages plus évolué; C++, C# et surement d'autres. apprendre le C, c'est comme apprendre le latin. c'est intéressant pour comprendre l'origine des mots, étudier des écrits anciens, et je sais pas trop quoi d'autre. mais ça reste une vieille langue. une langue faite pour manipuler du data de base. des chiffres, des caractères ascii, des arrays fixes. le C peut faire des mathématiques, mettre des choses en mémoires, faire des comparaisons. le C est un langage concret, loin de l'abstraction, loin de l'image, loin du réel. la poésie du C, parce qu'elle existe surement, je ne la vois pas encore. [[- Gio m'envoie un message sur slack]]en sortant pour aller diner, je demande à Gio ce qui l'intéresse dans la programmation. il me dit qu'il aime faire des trucs web et qu'il à déjà fait quelques contrats dans l'domaine. *"oohh, so you wanna work in some web design studio?"* *"yeah probably. I mean, I know a guy who works for PDIDDY on his web strategy team and he's makin' a shitton of money!"* Gio continue à me parler de la job du dude en question, puis il me dit ceci: *"actually, I don't really care if it's web or anything, I just want to get my mom out of her work. she hates her job and I just wish I could go there dressed as a flower delivery guy, I'd ask the receptionist if I could see Marisa, and when she'd see me I'd tell her that she can quit her job, that I'll cover her from now on."* Gio se tait et je le regarde *"Man sorry, i know that sounds silly, but I swear man, the thought of it keeps me up at night"* c'est vraiment pas silly Gio. [[on est tous ici pour différentes raisons]] je viens de terminer day06, et c'est la tempête dehors. j'ai pas envie de commencer day07 tout de suite, je suis un peu fatigué. je marche dans les allées et jase brièvement avec German qui m'offre du café (j'ai perdu mon filtre/drip aka no café) et je passe par l'endroit ou Jibran est assis pour savoir ou il en est. il est, comme d'habitude, plus avancé que moi. je continue ma marche et j’aperçois Yvonne pas trop loin qui me sourit. je vais m'assoir a coté d'elle; *"so how's day 06 coming along?"* *"uuuhhh, ok I guesss"* qu'elle me répond, [[un peu confuse]].[[free->e2]] [[punk->e2]] [[doggo->e2]] [[pizza->e2]] (click: "free")[(set: $pw to 'free')] [[dvx-100->e3]] [[guts->e3]] [[griffith->e3]] [[lil bow wow->e3]] (click: "griffith")[(set: $pw to 'freegriffith')][[from->e4]] [[2->e4]] [[isn't->e4]] [[will->e4]] (click: "from")[(set: $pw to "freegriffithfrom")][[lyfe->emessage]] [[dorm->emessage]] [[hell->emessage]] [[santana town->emessage]] (click: "hell")[(set: $pw to it + 'hell')](if: $pw is "freegriffithfromhell")[ to my dear piiper hey piiper, c'est étrange être ici. quand on pense à être ailleurs, j'ai l'impression qu'on pense être un peu plus libre, loin de notre routine et de nos habitudes. on s'imagine découvrir des choses encore inconnues, trouver des places inspirantes etc. c'est un peu comme ça mais pas vraiment. je me sens comme dans un tableau de mario bros au snes. un genre de tableau vraiment long, en 2d, ou je ne peux qu'avancer en avant. la fin est en avant. je progresse petit à petit mais je meurs à tout les 6-7 minutes. à la fin de la journée, peut-importe ce qui arrive, j'accède au prochain niveau. le prochain tableau est le même que le précédent: le même background, la même musique, les mêmes genres de tuiles, mais y'a plus de méchant, pis les méchants sont plus tricky à éviter/tuer. seule chose que je sais, la fin est en avant. habituellement, j'aime me dire que j'ai infini de vie. mais j'avoue qu'ici, parfois j'en doute. j'ai jamais été fan du snes. j'préfère des jeux moins linéaires, moins mécaniques, moins logiques. y'a pas de deck nigo au snes. y'a pas de jeux ou on se sent ailleurs, y'a pas d'histoire, ni de mythe (ou très peu). programmer en C, c'est parler aux machines c'est parler avec rien de vivant et s'assurer de prononcer chaque syllabe pour bien se faire comprendre programmer en C, c'est éviter le doute, illustrer tout, être trop clair, transparent. et tout ça m'effrai, et m'intrigue, parce que ce mon objet favoris (ou presque) est aussi programmé en C. ] (else:)[ //**/*#?& ENCRY$???PTED?%$MES$$ASGE%(*@?$$!!] [[return to MAIN->main]]on regarde son exercise ensemble. c'est très ruff. très TRÈS ruff. ensemble, on passe son code ligne par ligne et j'essai de comprendre sa logique. on se met à discuter d'autres choses, Montréal, SF, d'où elle vient, de mon origine, du QC/Canada, de son trip au BC. elle me demande si je veux rester à Montréal pour longtemps, et je lui répond; *"I don't know if it's a good city to grow old in. It's a good city to live in when you're young and you want to do a bunch of things, go to shows, but I don't know if I'd live there for the rest of my life."* je lui demande ce qu'elle va faire si elle rentre à 42US *"I don't think I'm gonna get in. This is not my thing. It's interesting to learn that stuff but I don't think that I want to be looking at numbers all day long. The best part for me is talking to the people. There's so many interesting people in here!"* [[elle a raison.->main]]$> git -C a49e2bf - Roby Provost Blanchard, 7 days ago : LAST MIN UPDATEEEEEEE EX03 19d7683 - Roby Provost Blanchard, 7 days ago : last minute find people sed update 9f5c0d7 - Roby Provost Blanchard, 8 days ago : all that password gibberish cleard the sky, it's actually sunny now 39ca781 - Roby Provost Blanchard, 8 days ago : thinking about skipping the next one, j'commence a etre fatigue 2f253dd - Roby Provost Blanchard, 8 days ago : super fun, really. can't wait to try to search that file 76bd306 - Roby Provost Blanchard, 8 days ago : return a bunch of bunch of mac adresses d52486c - Roby Provost Blanchard, 8 days ago : 26? day left. am i counting right? count_file.sh 9dbe74f - Roby Provost Blanchard, 9 days ago : finding sh, finding people, what are we gonna find next? f7298d7 - Roby Provost Blanchard, 9 days ago : a new day, a new first exercise, feeling more confortable already 96f0264 - Roby Provost Blanchard, 6 days ago : last minute emo commit___WOW EXO2 PLZ 7c79aa5 - Roby Provost Blanchard, 6 days ago : last minute emo commit 78957f2 - Roby Provost Blanchard, 6 days ago : don't feel like failing again.. 48e3d48 - Roby Provost Blanchard, 6 days ago : well today went by pretty fast a379d04 - Roby Provost Blanchard, 4 days ago : FIBONACCI DANS L'PANIER 6907653 - Roby Provost Blanchard, 4 days ago : recursive facts homies 1480856 - Roby Provost Blanchard, 4 days ago : recursive POWERSgit add ft_recursive_power.c 79cca0d - Roby Provost Blanchard, 4 days ago : power power power b258e66 - Roby Provost Blanchard, 4 days ago : iterative factorials? really?[C ##DAY05 3d960f8 - Roby Provost Blanchard, 2 days ago : 2 initial one 62d807b - Roby Provost Blanchard, 2 days ago : strcpy 08e53fe - Roby Provost Blanchard, 2 days ago : ft_strncopy! nouvelle resolution, ne parler a personne le matin, focus sur mes truc. also: RAGNAROK ONLINE MUSIC 235de74 - Roby Provost Blanchard, 32 hours ago : stupid atoi, je commence a etre un peu tanne de resoudre des problemes... 2c05219 - Roby Provost Blanchard, 27 hours ago : ERROR CHECKING LIKE CRAZYgit add ft_strstr.cgit add ft_strstr.c 63808d8 - Roby Provost Blanchard, 27 hours ago : paranoia uploads 814ffad - Roby Provost Blanchard, 27 hours ago : jveux des points..... c4e7fc1 - Roby Provost Blanchard, 26 hours ago : sdfgsgdfg 303b661 - Roby Provost Blanchard, 26 hours ago : sdfsdf ##DAY06 968455c - Roby Provost Blanchard, 14 hours ago : librairies, coding string utilities, c... i miss processing 83b22bb - Roby Provost Blanchard, 10 hours ago : ok done for today... let's start day 07 f979f1f - Roby Provost Blanchard, 4 hours ago : corrected my ft_atoi.. 832d244 - Roby Provost Blanchard, 3 hours ago : going crazy on the commit, je perds tellement de points pour des erreurs stupides ##DAY07 815aa79 - Roby Provost Blanchard, 3 days ago : ok, le sprint est commencer. 34cc6ac - Roby Provost Blanchard, 3 days ago : un autre de fini, je comprend mieux la memoire 6092a79 - Roby Provost Blanchard, 3 days ago : une dernier commit apres ca j'decaliss au dorm me craquer une biere 98ba234 - Roby Provost Blanchard, 3 days ago : CRAQUE 0d521c4 - Roby Provost Blanchard, 3 days ago : WOW LAST MNUTE FIX ##DAY09 7988900 - Roby Provost Blanchard, 2 days ago : some stuff, this is stupid 9b87ae7 - Roby Provost Blanchard, 2 days ago : douche froid wow f287dd7 - Roby Provost Blanchard, 2 days ago : tellement tanne de coder d867878 - Roby Provost Blanchard, 2 days ago : fsgdf 0733c05 - Roby Provost Blanchard, 2 days ago : is donnie safe? la semaine est déjà terminé entre le reveil et le lab, on voit pas le temps passer. au travers des grandes fenêtres, ça passe du gris pale au moins gris, au gris foncé, aux lumières des voitures sur l'autoroute. la cadence s'accelère. day07 commence mercredi 8h42 et se termine jeudi 23h42 day08 commence jeudi 8h42 et se termine vendredi 23h42 day09 commence jeudi 17h42 et se termine vendredi 17h42 exam01 commence vendredi 16h et se termine ventre 21h42 day05 - 8/23 exercices en 15 h - résultat : 10 % day06 - 4/5 exercices en 16 h - résultat : 20 % day07 - 4/8 exercices en 10 h - résultat : 20 % day08 - 0/7 exercices en 16 h - résultat : 0 % day09 - 5/23 exercices en 11 h - résultat : 6 % exam01 - 4/6 exercices en 4 h - résultat : 43 % [[la note de passage est de 25%]] je suis encore niveau 0, c'est pas grave. je m'en fait pas. ici, on est évalué par une machine. elle prend notre code, effectue quelques tests et nous renvoie un truc comme ça (font: "Courier")[ = Collected files ========================================== $> ls -lAR /var/folders/cv/hc5zk34n0070ctsr_43mgwpw0000gp/T/tmpsz8opz/user total 8 -rw-r--r-- 1 deepthought deepthought 1383 Jan 20 20:48 __GIT_HISTORY drwxr-xr-x 3 deepthought deepthought 102 Jan 20 20:48 ft_print_numbers drwxr-xr-x 3 deepthought deepthought 102 Jan 20 20:48 maff_revalpha drwxr-xr-x 3 deepthought deepthought 102 Jan 20 20:48 repeat_alpha drwxr-xr-x 3 deepthought deepthought 102 Jan 20 20:48 search_and_replace /var/folders/cv/hc5zk34n0070ctsr_43mgwpw0000gp/T/tmpsz8opz/user/ft_print_numbers: total 8 -rw-r--r-- 1 deepthought deepthought 1095 Jan 20 20:48 ft_print_numbers.c /var/folders/cv/hc5zk34n0070ctsr_43mgwpw0000gp/T/tmpsz8opz/user/maff_revalpha: total 8 -rw-r--r-- 1 deepthought deepthought 1160 Jan 20 20:48 maff_revalpha.c /var/folders/cv/hc5zk34n0070ctsr_43mgwpw0000gp/T/tmpsz8opz/user/repeat_alpha: total 8 -rw-r--r-- 1 deepthought deepthought 1489 Jan 20 20:48 repeat_alpha.c /var/folders/cv/hc5zk34n0070ctsr_43mgwpw0000gp/T/tmpsz8opz/user/search_and_replace: total 8 -rw-r--r-- 1 deepthought deepthought 1392 Jan 20 20:48 search_and_replace.c = repeat_alpha ================================================================= $> gcc -Wextra -Wall -Werror repeat_alpha.c -o user_exe = Test 1 =================================================== $> ./ihsrqey7a3mp8c7fiwj2fopa $> diff -U 3 user_output_test1 test1.output | cat -e Diff OK :D = Test 2 =================================================== $> ./o5e3hp5qw9zo12hgou5fqctr $> diff -U 3 user_output_test2 test2.output | cat -e Diff OK :D = Test 3 =================================================== $> ./rcr24z87p5u0furrl736m456 "salut" "a" "tous" "tout" "le" "monde" $> diff -U 3 user_output_test3 test3.output | cat -e Diff OK :D = Test 4 =================================================== $> ./p7scn64vp5uinzww5wngpo7c "FNwWqldJypVgbDXRS" $> diff -U 3 user_output_test4 test4.output | cat -e Diff OK :D = Test 5 =================================================== $> ./qajyrn7bcxrh23gvdfcwn7vm "VJQiIM1e3bU" $> diff -U 3 user_output_test5 test5.output | cat -e Diff OK :D = Test 6 =================================================== $> ./i882s8b4npk1e9pwhocuugby "r2gM" $> diff -U 3 user_output_test6 test6.output | cat -e Diff OK :D = Test 7 =================================================== $> ./y4700bdolr1ogfayav9u4g41 "WQRTF2SblytzHf efFJANn ImTEJu02xWHXpO CD1yKVdpJ vmxqHkYy fhs2OITBj" $> diff -U 3 user_output_test7 test7.output | cat -e Diff OK :D = Test 8 =================================================== $> ./obd9osj2ehh4e6t2yc1edcus "rk6vHdxq9 LAUoJOK37z E9DIlXNe8 gXyqGS176" $> diff -U 3 user_output_test8 test8.output | cat -e Diff OK :D = Test 9 =================================================== $> ./gwdekv5nbr7fxj9ulhluctiv "fKva85 2H39oY74idLmOZGJ nQ3afMjL6gJSklP R6kKXsHUyicfL OUP2tRFzQGpKy43Xw npzk42y i82w3aLUg7QTbyeC pNsjZ1a6I" $> diff -U 3 user_output_test9 test9.output | cat -e Diff OK :D = Test 10 ================================================== $> ./ywpsl2hjp0tffdbheafxt0tm " mT3Qscux109q48LMwZhyAui23 C6XlLxcjGTuosYpE :2gU9mvT8 771A0hqQCIYvwN =d8FICPNb2V5AKaz9V60CiArTlNZ8kKM /" $> diff -U 3 user_output_test10 test10.output | cat -e Diff OK :D = Test 11 ================================================== $> ./9yla7o0cxmejj7mb0avu09ia ":kauPMJ4bNg5vh9E1D0f9sU 41GOD<" $> diff -U 3 user_output_test11 test11.output | cat -e Diff OK :D = Test 12 ================================================== $> ./uxvl8ygvcvjgz0rgr7p6pddb "4pZrAfDqHvW4P<dW7noc (iTuE0eXAs2jPJ +lV251L4jD 40X6 -2Pajr4W/gmz7BOoHKp4xk 7tEUVb18ao39m3z 8mrMO3Cz8b4" $> diff -U 3 user_output_test12 test12.output | cat -e Diff OK :D = Test 13 ================================================== $> ./qd5ga0egsflxc1brcyhxuk14 " s8vw6jbF4fz=HLPZam14u6Cx5Tszy>SuPy8Y2X +OkeW6wciuPoMB0:8ZK /pJflFoO3q12ZNAY@HE24ZOSG65K;" $> diff -U 3 user_output_test13 test13.output | cat -e Diff OK :D = Test 14 ================================================== $> ./brjx5nab9yxfsgwmu6op23kh ";bxm3XbfUw 9hHVg4wm0VnG9eL54>gaoeG@raROlEpL6VvFTon3<ELtcG3TqDFYbf1mYw0l8CpofdBM6zOuS3@euiQxfo0yDYX2" $> diff -U 3 user_output_test14 test14.output | cat -e Diff OK :D = Test 15 ================================================== $> ./7998t4fcqcv9te80wraftst6 "3YcjgK ZD0mNYJL4dgHo1rFj1YZJqG76j9IOPTu<dogkUNRjlB 91Ma2YGiQIDdFwyU +ptJQKHA5yYMP /INgnfbFhoyj23PpRDtrN+" $> diff -U 3 user_output_test15 test15.output | cat -e Diff OK :D = Test 16 ================================================== $> ./k701pcclcd42ekztnknl0j5e " @RUOCNe10VYmgQd7zD >aZnQMReK0u5a )" $> diff -U 3 user_output_test16 test16.output | cat -e Diff OK :D = Test 17 ================================================== $> ./9lp6urk4wugi6qtbfo24bn27 "0egGBn;YobW0GK79ijmBzD5a9MHGjE3Y2B2Fi6GyCk=mA76 25NWh6zQ*mMHysqadvefOw5DcA +SkYAaZ-No3WIS>" $> diff -U 3 user_output_test17 test17.output | cat -e Diff OK :D = Test 18 ================================================== $> ./praqefrlgwp62d7llofzaspq "?w4mIxS6u503iZebg4udizOxeB69vcSDUFJEjBzHi4T *1UW6" $> diff -U 3 user_output_test18 test18.output | cat -e Diff OK :D = Test 19 ================================================== $> ./lwqc18hyyo1hh2uvuoprs0mh " *f09Oqvi7M WtZyhlK5ENqYd4XaS8DV3vVHG4zsp /9Zwds5v7aL0 eLtjyzmHE *DC24wX 3" $> diff -U 3 user_output_test19 test19.output | cat -e Diff OK :D = Test 20 ================================================== $> ./50859esgstprfgiwhybk0zpy ".gDxf3IwNMYjR =VUOspW." $> diff -U 3 user_output_test20 test20.output | cat -e Diff OK :D Grade: 1 ] puis c'est tout. on argumente pas. on explique pas. quand la machine feel bien, elle nous renvoie une simili-explication sur pourquoi notre code marche pas. [[sinon, ben on fait avec ce qu'on a]] quel genre d'individu devient celui qui apprend à répondre aux conditions de la machine qui ne s'explique pas? et comment évalue-t-on la valeur d'un individu et son apprentissage du langage machine et sa compréhension de ceux-ci? et comment évalue-t-on la valeur d'un individu? comment évalue-t-on la valeur? la machine qui ne s'attend qu'à une réponse une seule, - la bonne. a + a = b b = a - a b - b = 0 la machine qui ne doute pas, et ne fléchie pas sous nos arguments en qui ne peut qu'exister qu'en état de certitude 0 1 true false sans état entre les deux sans ambiguité sans doute est-ce vraiment comment je veux être évalué? dans l'assumption d'un seule réponse, unique, celle de la machine? [[la machine n'entend pas la voix du barde]] la machine n'entend pas la voix du barde la machine n'entend pas la voix du barde la machine n'entend pas la voix du barde la machine n'entend pas la voix du barde la machine n'entend pas la voix du barde "*Live free or die said the orphan to the prince Live free or die said the dying fire Live free or die Said the poet in the coffin*" [[la machine n'écoutera jamais la voix du barde->main]] (background: white)[(text-colour: black)[Écrire une fonction ft_any qui renverra 1 si, en le passant à la fonction f, au moins un élément du tableau renvoie 1, 0 sinon. • La fonction sera prototypée de la manière suivante : (font: "Courrier")[int ft_any(char **tab, int(*f)(char*));] • Le tableau sera délimité par 0.]] retourne un int, prend en arguement un array d'array et un pointeur sur fonction. appliquer sur chacun des éléments du tableau une fonction inconnue qui retourne un int. ce tableau est composé de char. [[le tableau sera délimité par des 0.]] lundi, 3ième semaine de la piscine. chaque journée commence par une serie de vidéo "explicative" sur un nouveau concept. ces vidéos sont relativement simples. pour day10, un gars blasé nous "explique" comment utiliser les pointeurs sur fonction, sans vraiment mentionner leurs utilités. je crois avoir parlé des fonctions dans un post précédent. en gros, il s'agit des "actions" de notre programme. si, par exemple, on fait une addition à l'aide de notre calculatrice, on appelle probablement la fonction add/addition. dans le cadre d'un jeu de course, on utilise la fonction freiner pour ralentir notre voiture lorsqu'on pèse sur le bouton approprié. maintenant, [[les pointeurs]].[[non, je ne vous expliquerai pas ce que sont les pointeurs.]] day10 n'est pas ma meilleure journée. échec échec échec échec échec échec échec échec échec échec - encore une fois. [[qu'est ce que je fais ici. pourquoi j'suis encore ici.->raisonici]] deux semaines de faites, deux semaines à venir. deux semaines à cumuler, coup après coup, des échecs. je deviens aigre, et morose. *"pourquoi apprendre le C? pourquoi apprendre à programmer? je connais déjà processing, python, blender, arduino, ..."* [[je change de place]]et je m'assois à l'écart. la présence des gens m'irrite. retirer mes écouteurs m'irrite. répondre aux questions m'irrite. dans ma tête, je pèse le pour et le contre. 2 semaines 2 semaines libres, pourquoi ne pas commencer un projet de prog ici, pas en C, juste un projet que je veux, sans pression? 2 semaines, c'est long ici, et j'ai envie de revoir mes amis, pis d'aller boire 15 pintes, pis marcher dans les rues, pis pas faire du C. 2 semaines à pu faire du 13 heures de compute par jour, [[ça serait l'fun.->main]]sur une plateforme d'embarquement une femme et deux hommes attendent, anxieuse, nerveux (même s'il le cache) et le dernier, calme. tous les trois quitteront sous peu tous les trois pour différentes raisons, l'un cherche son frère dont il n'a plus de nouvelles depuis quelques années, elle, elle doit chercher ailleur, chercher au delà de ses connaissances, (elle est peut-être en fuite, également) le dernier quitte parce que c'est la seule occasion. le bruit des moteurs se fait entendre claquants comme le tonnère en juin et pendant que [[la porte grince et s'ouvre]] le dernier sourit Red trace des lignes sur une map fictive, blasé. Ça fait plusieurs mois qu'ils sont partis et toujours pas la moindre trace de leur objectif. *"pourquoi est-ce qu'on brette ici? c'est clair qu'ils ne sont plus là."* Assis dans son siège, Red s'impatiente. Il ne comprend pas comment [[les analyses de VGem1538]] peuvent prendre autant de temps.couchée sur la banquette VGem1538 replace ses pensées *"le résultat du spectographe semble bon, pourtant.."* ça fait quelques jours qu'elle passe et repasse ses données, sans résultats concluants. bien qu'elle fasse tout en son pouvoir pour trouver la solution à l'énigme, rien ne semble en venir à bout. *"c'est comme si on nous cache quelque chose..."* [[VGem1538 place le dos de ses mains ses yeux, fatigué]]dans la salle des machines, Bertholet vérifie la pression des réservoirs pour la quatrième fois. son esprit est distrait et sa concentration en prend un coup. il pense à ses ami(e)s, sa famille, et se rapelle l'odeur du café qu'il faisait vers 8-9h du soir. le temps passe à un rythme différent plus lent, plus long, stagnant comme en phase d'attente. la pression lui semble bonne, ne lui accordant plus vraiment d'importance. *"j'ai hate de revenir"* dit-il, [[l'esprit aveuglé,]] les yeux dans le beurre et ses mains et son corps engourdis ici, tous les jours sont les mêmes procédures, tests, analyses, résultats. échec. loin de tout, isolés, le temps use tout ce qu'on a la patience, la concentration, l'ambition et l'origine de la quête. [[pourquoi sommes nous partis? ->main]]dans sa cabine, Bertholet ouvre les yeux. il s'est endormit sur son fauteil la veille en lisant un vieux manuel d'électronique. il remarque quelques notes laissées lors de sa dernière consultation, plusieurs années auparavant. il s'agit de quelques idées concernant l'implantation d'un circuit autonome influencé par la rencontre de différent champ magnétique. dans un calepin plus récent, Bertholet retranscrit les notes et y apporte quelques modifications. il s'arrete lorsqu'il entend [[la voix de VGem 1538.]] le doigt parcourant son moniteur VGem 1538 prend des notes sur un morceau de papier. *"je crois que ça y est! j'ai trouvé leur direction!"* elle sait que le résultat n'est pas parfait, mais les coordonnées retournées par son analyse sont satisfaisante. *"Red! Red! jète un oeil à ton terminal!"* VGem se lève et déchire une section du papier sortant du traceur, puis l'insère dans une machine sur son bureau. elle prend un moment pour regarder son écran, alors que la [[machine émet une series de clic et blip.]] elle remarque le tas de papier griffoné à la sortie du traceur, puis donne un léger coup de pied dans le vide. au travers de la grande paroie vitrée, Red regarde les étoiles. il se rappelle son escapade vers la ceinture de Pégase, à 0.8AU de Jupiter. il pilotait une capsule transportant le ravitaillement pour une équipe de bio-planetologue. arrivé sur place, l'équipe lui avait fait visiter leur station, puis lui avait montrer les expériences qu'ils opéraient sur les astéroïdes de la région. les chercheurs avaient réussit, par quelconque procédé, à transformer le cuivre en glace, puis en eau. [[BIP -POP -CLICLICLIBLOP]] arraché de ses pensés, Red regarde la série de caractères s'afficher sur son moniteur. il entend la porte s'ouvrir derrière lui. *"ce n'est pas leurs coordonnées exactes, mais c'est une bonne piste"-* lui dit VGem, exitée. *"bien joué. j'préfère essayer ça que de faire du sur place."* le feu s'allume dans ses yeux. Red actionne quelques boutons, et [[démarre les propulseurs. ->main]] l'exam02 terminé, je prend ma fin de semaine plus relax. j'me réveille à 10-11h, et vu que la *cantina* est fermé, je me dirige vers le centre d'achat Lavallois de Fremont. il est important de noter que pour s'y rendre on doit marcher dans une section du cartier industriel de Laval-Fremont, passer sur un overpass, puis sous un overpass, et dans le fond faire un detour de 20 quelques minutes [[pour un café.]]c'est pas grave, j'ai le temps, et il fait bleu et chaud. en marchant sur l'overpass je me rend compte que ça fait 20-quelques jours que je suis ici j'ai appris plein de choses plus ou moins utiles sur le C, j'ai rencontré pleins de gens, et j'ai pratiquement fait la paix avec Moulinette. j'ai appris que la [[vérité se trouve dans le man->la seule vérité]] mais pas vraiment. j'ai eu un bon reminder sur l'échec, et [[je n'ai jamais aussi peu mangé.]]au centre d'achat, il y toute la panoplie de fast-food inimaginable et un centre de fitness, Oasis, totalement vide. on y trouve aussi plusieurs Hair Saloon, Nail Saloon, Face Spa, Pedicure Spa, tous aux allures 1990, pratiquement désert. (me faisant énormément penser aux shops perdus dans Shenmue.) entre deux facades anonymes, je remarque l'enseigne du. CAFÉ LAB. ont-ils vraiment utilisé ces deux mots si embriqué dans mon quotidien afin de nommé leur café? [[ai-je trouvé mon oasis?]]j'accélère le pas, j'ai le gout du café en bouche, un américano? un double allongé? pourquoi pas les deux? arrivé devant la facade, aucunes lumières allumés et les vitres sont tapissés de bubble tea et de sushi. je suis confu, et je fini par [[aller au starbuck,]] un peu décu.je commande un américano, je le bois sur la "terrasse", j'écris pour programming tale. je range mes trucs et m'apprête à partir et à ma grande surprise, Yvonne est là! on marche ensemble pour revenir et je me rappelle que le caissier du dépanneur m'avait demandé: *"did you came by the fence?"* dans un anglais un peu brisé. je propose a Yvonne de trouver l'entrée par la fence. [[elle hésite un peu.->main]]aujourd'hui, Yvonne a quitté la piscine. elle était triste d'abandonner, mais surtout [[d'abandonner->la fence]] les gens ici. quelques jours plus tôt, on a passé un moment à jouer du piano. elle pratiquait plus jeune, et me montrait quelques chansons qu'elle connaissait. *"do you know how to play this? let me show you, it's a duet!"* après quelques essais, je comprend un peu la structure de la chose, et on passe quelque temps à jouer les patterns, et je me trompe pas mal toujours, mais vu que c'est juste des whites keys, je me ratrappe avec des passes d'impro correctes. je lui demande si elle peut m'apprendre à jouer [[all fires]] de moonface/swan lake, elle trouve l'air assez rapidement et j'apprends tant bien que mal les premières barres. *There was a flood A world of water The Mason's wife Swam for her daughter 1000 people did what they could They found a steeple And tore up the wood 500 pieces means 500 float [[1000 people means 500 don't]]* et comme nous tous, elle était secouée des récents évènements, depuis l'arrivé de Trump et ne pouvait pas rester ici, à jouer avec du code. chose qui ne l'intéressait pas vraiment, de toute façon. *"the best part here is the people"* et elle débatait si quitter n'était pas une weakness, c'est pas une weakness si tu quittes pour mieux, [[si tu quittes pour une autre quête]] plus importante pour toi.*I've said it before And I'll say it again All fires have to burn alive All fires have to burn alive From near his heart He took a rib All fires have to burn alive From near his heart He took a rib All fires have to burn alive I've said it before And I'll say it again [[All fires have to burn alive, to live ->main]]*elle hésite à descendre la pente semi-abrute qui mène à la track de chemin de fer. *"come on! it's nothing!"* on fini par descendre, pis on marche sur les grosses roches dans un semblant de zone, seule place verte et grande que j'ai vu à Laval-Fremont. elle me demande ce que j'aime d'une ville, et je lui répond que j'aime pouvoir marcher dans la ville, et pas me sentir stressé comme à new york. et j'aime sentir que la ville est habité par des humains vivants, qui écrivent sur des murs et chantent dans des bars cheaps et coupent des clotures. elle, elle aime les villes construites dans la nature, comme rio de janeiro, ou les gens sont vivants, et festifs, et ou la culture est gorgeous, et colorée. elle aime l'amérique du sud et voyager. je repense à ma curse du voyage et j'essaie [[d'imaginer rio->piano]].nos trois semaines de formation sont terminés, et il ne reste qu'un projet avant l'exam final. ce dernier projet s'étend sur trois jours et se fait en équipe de deux. il s'agit d'un projet T3, à l'instar des projets quotidiens qui sont des projet T1. l'exam final et matchnmatch sont des projet T2. plus le T# est élevé, plus [[le projet est difficile]] et plus il vaut de points.en sachant que ce projet arrivait à grand pas, j'ai demandé à Femi, un ami Nigérien avec un background en math, s'il voulait s'occuper des algorithmes *"yeah man, for sure!"* pour ma part, j'allais m'occuper du file handling, de la vérification des données et de l'allocation de mémoire. (click: "file handling")[$def[> il s'agit de créer des fonctions qui vont prendre en charge la lecture des fichier textes et l'entrée standard.]] (click: "vérification des données")[$def[> une fois lue, les données doivent être vérifées pour être considérées comme valides.]] (click: "allocation de mémoire")[$def[> dans un langage comme le C, il est obligatoire d'allouer de la mémoire pour nos données lorsqu'elles ne sont pas de type standard (int, float, char, void, etc)]] [[il s'agit d'un projet de cartographie.]] (set: $def to (background: white))notre programme doit pouvoir recevoir une série de map et trouver l'emplacement le plus probable d'un vaisseau et son équipage. les cartes contiennent de l'information sur les obstacles/dangers de chaques systèmes ainsi que l'espace entre ces systèmes. vu notre niveau, [[les cartes sont en 2d]] rendus sous fichiers textes.notre plan d'action va comme suit. Femi trouve/développe et implémente un algorithme permettant d'analyser la distance entre les nombreux obstacles et retourner les endroits vides, donc favorable au déplacement du vaisseau. pour ma part, je génère quelques maps, tantot complèxe et dangereuse, tantot simple et évidente, afin de tester son algorithme. j'implémente des fonctions qui, lors de la lecture initiale, retourneront les dimensions du système et évalueront les éléments de la carte considérés comme: -dangereux -obstacle -hostile -mysterieux [[le projet va de bon train]]les deux jours passent rapidement et on s'envoie plusieurs versions du code essayant d'améliorer la vitesse d'execution tout en réduisant l'utilisation de la mémoire. le code est pratiquement fonctionel, et trouve une solution dans 90% des cas. il est bon de noter que les cadets accordent des points bonus aux programmes les plus rapides et moins gourmants coté mémoire. selon les rumeurs, le meilleur programme réalisé par un novice trouve une solution dans une carte de 10000u carré en 0.8sec. afin de tester nos résultat, Jibran met la main sur un executable d'un ancien novice ayant atteint le niveau 10. [[ce programme retourne la réponse en 1.6sec.->1.6sec]] *(un seul étudiant ici est niveau 8, la moyenne est niveau 3, je suis encore niveau 1.)* Femi se sent confident avec son algorithme, et après avoir inspecter son code avec lui, on trouve quelques endroits qui ralentissent l'execution. puis, quelques heures plus tard, on décide de tester notre programme sur une map de 10000u carré. je génère une map plutôt simple à l'aide d'un script. Femi entre la commande [[time ./bsq map10k > /dev/null]].o....oo...................o.................o..............................o....................... ....................xxxxxxxx...........o...............o...o...................................o.o.. ...........o........xxxxxxxx..................o.......................o...............o............. .........o..........xxxxxxxx..................o..................................................... o...................xxxxxxxx........................o............................oo.....o........... .o.........o........xxxxxxxx..............o.o...o..............o.......oo.........o............o.... .................o..xxxxxxxxo...o.....o................................o.........o.......o.......... ...................oxxxxxxxx................................................o....................... ....................xxxxxxxx..................o..o.........................o........................ [[1.53s user 0.67s system 85% cpu 2.21s total]]notre programme s'execute et retourne [[la "bonne" solution]] en 2.21 secondes! Femi est surpris, et excité *"aha man what??! I thought this would take 30 seconds"* le voir aussi content me fait rire. on prend un peu de temps pour améliorer l'algorithme et l'efficacité du programme. l'heure du souper approche et je quitte pour la Cantina. à la table se trouve Jibran, pakistanais - Marco, italien - Max, allemand - fan des langages fonctionels on discute de notre expérience ici de notre apprentissage du hacker's ethic et de l'unité 8200 à israël. et de [[comment le code peut être utile, humain et sain]]difficile à dire, difficile à expliquer. chaque emploi de son temps peut être sain et utile à condition de respecter l'humain et moins le capital. chaque emploi de notre temps devrait être sain pour les gens autour de nous pour ce qui est d'être utile il faut savoir peser sa valeur utile pour qui? utile pour quoi? utile pour Jibran n'est possiblement pas utile pour Gio ni utile pour moi? l'utilitaire relève de la valeur mais la valeur relève de quoi? laisse-faire la logique et l'utilitaire et parce que les choses qui importent vraiment [[ne relèvent pas de l'utilitaire->main]] mais du vecu Double-click this passage to edit it.Bertholet se rend vers la salle des machines, pendant que le bruit des propulseurs s'intensifie. *"si seulement il pouvait être là..."* il pensait à son frère, Maverick, embarqué sur [[Tariel II]], 10 ans auparavant. Tariel II, surnommée la cité volante, ou Tariel la grande, avait comme objectif de récupérer des ressources en péripherie de notre système solaire. le premier voyage, déclanché en 1999, s'est avéré un succès lorsque MIR2, encore en fonction à l'époque, avait détecté une cargaison provenant de la position de Tariel II, en [[juillet 2003.]] ils étaient tout les deux assis dans un café italien, les yeux rivés sur le vieux téléviseur. *"j'y crois pas. ça vraiment marché!"* Bertholet écoutait son frère, tout en mangeant des bleuets. *"y parait qu'ils cherchent des rig-techs pour le prochain départ, je crois que c'est ma chance. j'suis pu capable de travailler pour Thyson-K."* à ce moment-là, Bertholet ne l'avait pas cru. comme s'il trouvait le projet trop ambitieu [[pour son frère.]]Tariel II revient au printemps 2004, puis redécolle en automne, cette fois-ci, la cité comporte un équipage de 100 personnes et le voyage devra durer 100 mois. dans le lobby, Bertholet prend Maverick dans ses bras. *"bon ben sa y'est p'tit frère. j'espère que le voyage sera pas trop long."* Bertho sort un sac de papier brun, à l'intérieur se trouve un épais morceau d'écorce de boulot et une map ancienne, [[une map des étoiles,]] datant probablement du 17ième siècle.à bord du Sprinter-1 le bruit des moteurs se fait entendre claquants comme le tonnère en juin alors que le vaisseau quitte la Hutte. Bertholet regarde par le hublot. ce voyage n'etait pas trop ambiteux pour Maverick, le voyage était trop ambiteux pour lui. *"54 jours. toujours rien, certains disent que tu es tombée, et d'autres que tu as enfin trouvée refuge, mais pour nous, tu restes muète."* [[*"où te caches-tu, Tariel la grande?"*->main]]exam de 8 heures commence à 10h. question niv 0: c'est dans la poche. **+9pts** question niv 1: erreur stupide question niv 1, try 2: triple triple check. **+4pts** question niv 2: additioner le total des nombres premiers, incluant le nombre *nb*, passé en argument. fail. question niv 2: n'imprimer que le premier 'z' d'une phrase passée en arguement, si la phrase contient un 'z', suivi d'une newline. **+4pts** question niv 3: ne retourner que le premier mots d'une phrase, un mot étant un ensemble de caractère séparé par un espace ou une tabulation. fail. question niv3 - try 2: print_hexa. grademe. - finish. il est 13h30. **[[17pts.]]** je repense à ce qu'Yvonne disait sur abandonner, n'ai-je pas abandonné? j'avais 8 heures pour faire l'exam final, alors que je me suis couler à 17pts. ai-je réellement [[terminé la quest?->main]] ai-je réellement fini la quest? [[[x->main]]]