CS50: dans le cadre du cours d'informatique le plus élitiste au monde

Il n'y a pas beaucoup de cours universitaires qui peuvent compter Mark Zuckerberg et Steve Ballmer parmi ses conférenciers. Il n'y a pas beaucoup de cours universitaires où plus de 100 000 personnes se sont présentées pour des conférences (bien que principalement en ligne). Il n'y a pas beaucoup de cours universitaires qui ont leur propre marque, marchandise et bataille pour enregistrer le nom du cours en tant que marque. Mais il n'y a pas beaucoup de cours universitaires comme CS50.

CS50 est sans aucun doute le cours informatique le plus élitiste au monde. Il est enseigné non seulement à Harvard, mais maintenant dans une autre institution de l'Ivy League, Yale, où il est instantanément devenu le cours le plus populaire de l'université au cours de sa première année. Si vous faites partie des nombreux qui ne parviennent pas à obtenir une place dans le cours de l'une des universités, vous pouvez suivre CS50 en ligne, soit via des institutions numériques telles que edX ou iTunes U, soit simplement via

le site du cours, où toutes les conférences, tutoriels, matériaux, devoirs et leurs solutions sont publiés gratuitement. Les conférences pourront même bientôt être regardées en utilisant VR casques, comme si vous étiez réellement assis dans les couloirs de Harvard.

Alors, qu'est-ce qui rend ce cours si spécial? Qu'est-ce qui pousse des milliers d'esprits américains parmi les plus brillants et des centaines de milliers de personnes du monde entier à diffuser les conférences? J'ai parlé au responsable du cours et aux étudiants, ainsi qu'à quelques conférences moi-même, pour le savoir.

L'informatique pour tous

CS50, ou Computer Science 50 pour donner son nom complet, n'est pas uniquement l'apanage de ceux qui écrivent Perl en pyjama. Près des trois quarts des étudiants qui s'inscrivent au cours à Harvard n'ont jamais suivi de cours d'informatique auparavant. Comme le professeur David Malan l'a dit aux étudiants lors de sa conférence d'introduction au cours de 2015: "Nous ne prévoyons pas dans ce cours de vous transformer tous en majors ou concentrateurs en informatique, mais plutôt de vous donner l'opportunité d'aller au-delà du monde avec lequel vous êtes actuellement familier et de ramener de ce monde des compétences, des connaissances et un savoir-faire que vous pouvez appliquer à votre propre monde, que ce soit dans les sciences humaines, les sciences sociales, les sciences naturelles ou au-delà. Le fait que vous appreniez la programmation en cours de route est, selon le site Web, "peut-être son plus puissant retour".

Cela ne veut pas dire qu'il n'y a rien à gagner de ceux qui connaissent déjà leurs procédures à partir de leurs variables. Chacun des « ensembles de problèmes » que les élèves sont invités à résoudre se décline en deux degrés de difficulté: Standard, qui 90% + de la classe sont censés le faire, et Hacker Edition, pour ceux qui ont les côtelettes techniques qui veulent pousser eux-mêmes. En effet, tout le cursus à Harvard et Yale est organisé en trois filières différentes: ceux qui sont « plus confortable", avec le langage de programmation, ceux qui sont "moins à l'aise" et un groupe pour ceux qui sont "quelque part entre".

Près des trois quarts des étudiants qui s'inscrivent au cours à Harvard n'ont jamais suivi de cours d'informatique auparavant.

Le cours et de nombreuses conférences - dispensées en direct à des centaines d'étudiants et à la demande via des flux vidéo très soignés - sont dirigées par le professeur Malan: un conférencier engageant qui me rappelle l'ancien chef de Windows Steven Sinofsky, en ce sens que vous avez clairement affaire à un intellect si féroce que les mots ne peuvent pas sortir de sa bouche assez vite pour suivre son cerveau. Il parle peut-être au rythme d'une mitrailleuse, mais il est également brillant pour distiller des concepts complexes en morceaux digestibles.

Dans la conférence d'introduction de 2015, par exemple, il utilise un ensemble d'ampoules pour apprendre aux étudiants à écrire des nombres en binaire, expliquant comment chaque ampoule (allumée pour 1 et éteinte pour 0) représente un bit. C'est l'explication la plus claire que j'aie jamais vue. Grâce aux vidéos supplémentaires sur le site CS50, je peux maintenant additionner, soustraire et multiplier en binaire aussi.

Il commence également à explorer le développement d'algorithmes "diviser pour mieux régner" en déchirant un annuaire téléphonique (un peu maladroitement, compte tenu de son physique de geek orthodoxe). Cela illustre graphiquement que même avec 40 milliards de noms répertoriés par ordre alphabétique dans un annuaire téléphonique, il ne faudrait que 36 étapes pour trouver la personne. que vous cherchiez si vous ouvriez le livre au milieu et arrachiez la moitié qui ne contenait pas le nom de la personne (pour expliquer le concept de log n).

cs50_coding_yellow_pages_rip

Ensuite, il y a la démonstration de la façon dont les commandes écrites pour les ordinateurs nécessitent un degré de précision auquel nous ne sommes pas habitués lorsque nous ordonnons aux humains. Il demande aux étudiants de la salle de conférence de Yale de crier des commandes sur la façon de faire un sandwich au beurre de cacahuète et à la confiture, l'un de ses comparses sur scène exécutant les commandes à la lettre. Ainsi, "sac de pain ouvert" a pour conséquence que le sac est déchiré et que le pain se répand partout, tandis que plus tard dans le « programme » le fabricant de sandwichs est pris dans une boucle infinie qui ne se termine pas bien pour le beurre de cacahuète pot.

Connexion codée

Cette manière attrayante de présenter le sujet potentiellement sec et intimidant de la programmation semble certainement être un succès auprès des étudiants, en particulier ceux qui n'ont jamais étudié l'informatique auparavant. Ed Rex, le fondateur de la startup musicale britannique Jukedeck, m'a récemment raconté comment il a été inspiré pour commencer à coder après avoir assisté à une conférence CS50. "J'étais complètement renversé", a déclaré Rex. « Après une heure dans son amphithéâtre [de Malan], je suis ressorti en pensant, premièrement, pourquoi personne ne m'avait dit cela auparavant; deuxièmement, la programmation est incroyable; et troisièmement, il semble que ce soit beaucoup plus faisable que les gens au Royaume-Uni ne voudraient vous le faire croire.

Voir liés 

Apprenez à coder gratuitement: les meilleurs cours de codage et de développement d'applications au Royaume-Uni lors de la semaine nationale de codage
Un an en tant que nomade codeur

Kyle Schmigel, 23 ans, fait partie de la promotion actuelle du CS50. Il m'a dit qu'"apprendre à programmer en général me permet de concentrer mon esprit d'une manière très différente de ce que je fais habituellement dans ma vie de tous les jours. C'est une façon amusante de se mettre au défi et de résoudre des problèmes.

"Jusqu'à présent, la chose la plus importante que j'ai apprise est de regarder les choses sous plusieurs angles", a ajouté Schmigel. « Je n'aborde peut-être pas le problème de la bonne manière, ou je pourrais faire les choses de manière plus simple. CS50 est une classe difficile, mais je n'ai jamais rien fait d'aussi amusant que de me mettre au défi de le suivre.

Malan est trop modeste pour attribuer son style d'enseignement comme l'une des principales raisons du succès de CS50, soulignant d'autres facteurs. "Nous avons certainement bénéficié d'un regain d'intérêt pour l'informatique à l'échelle internationale, en particulier avec la technologie si populaire en ce moment", m'a-t-il dit. "Mais nous espérons que l'accessibilité de CS50, associée à sa rigueur et à sa culture, résonnera particulièrement auprès des étudiants, en particulier ceux sans expérience préalable."