32 points par GN⁺ 2025-05-26 | 4 commentaires | Partager sur WhatsApp
  • Le curriculum OSSU propose gratuitement une formation complète en informatique à partir de ressources en ligne issues des meilleures universités du monde
  • Il reproduit la structure d’un cursus universitaire de niveau licence en informatique, avec une introduction, un tronc commun, un niveau avancé et un projet final
  • Tous les cours et devoirs sont gratuits ou majoritairement gratuits, même si certaines évaluations peuvent entraîner des frais
  • Un réseau mondial de soutien entre apprenants actif, notamment via la communauté Discord, ainsi que des mises à jour continues des ressources, est maintenu en permanence
  • Les apprenants peuvent avancer de manière autonome ou en groupe, en adaptant librement le rythme et les choix à leur situation

Qu’est-ce qu’OSSU et pourquoi est-ce important

OSSU (Open Source Society University) est un curriculum open source conçu pour permettre à n’importe qui d’acquérir, sans frais, une formation autodidacte en informatique au niveau d’un diplôme universitaire classique. Il s’appuie sur des cours et ressources publics de grandes universités mondiales comme Harvard, MIT ou Princeton, avec pour objectif non pas une transmission ponctuelle de connaissances, mais une expérience d’apprentissage équilibrée fondée sur la théorie, la pratique et l’application.

  • Toutes les ressources d’apprentissage sont une sélection de ressources gratuites de haute qualité disponibles en ligne
  • Il reflète rigoureusement les standards internationaux des cursus fondamentaux de licence en informatique, comme la norme CS2013
  • Il s’adresse avant tout à des personnes capables de s’auto-motiver, de maintenir des habitudes d’apprentissage sur la durée et de chercher de l’aide dans une communauté mondiale d’apprenants

Structure et caractéristiques du curriculum

  • Introduction (Introduction to CS) : permet de découvrir les concepts de base de l’informatique et de la programmation, ainsi que leur intérêt. Inclut la programmation Python, la théorie du calcul, les structures de données de base et les algorithmes
  • Tronc commun (Core CS) : correspond à peu près au contenu d’un cursus universitaire jusqu’à la troisième année, avec programmation (fonctionnelle, orientée objet, conception logicielle), mathématiques (mathématiques discrètes, statistiques, probabilités, calcul différentiel et intégral), systèmes (architecture des ordinateurs, OS, réseaux), théorie (algorithmes, problèmes NP, etc.), sécurité, applications et éthique
  • Avancé (Advanced CS) : correspond à l’année finale. Il permet de choisir des domaines d’intérêt parmi la programmation avancée, les systèmes, la théorie, la cybersécurité ou les mathématiques avancées
  • Projet final : met en pratique les connaissances acquises via un projet concret, dont les résultats sont partagés et évalués avec des pairs du monde entier. Il peut servir de preuve de compétences pratiques et de portfolio pour l’emploi

Modalités d’apprentissage et coût

  • Le curriculum peut être suivi seul ou en groupe
  • Il est recommandé de suivre les cours dans l’ordre, mais il est possible d’en sauter certains si leur contenu est déjà maîtrisé
  • Tous les cours sont proposés gratuitement en ligne. Certaines plateformes (Coursera, edX, etc.) peuvent facturer l’évaluation des devoirs, examens ou projets, mais dans la plupart des cas, l’apprentissage lui-même reste gratuit. Des aides financières (bourses / Financial Aid) sont également indiquées pour réduire la charge économique
  • Un modèle Google Sheets est fourni pour aider à suivre la progression et la date estimée de fin de parcours

Communauté et accompagnement

  • Un serveur Discord est disponible pour les participants, avec des échanges actifs autour des cours, des questions et du networking entre pairs
  • Des canaux de retour sont activement utilisés, comme les GitHub Issues et les propositions d’amélioration du curriculum
  • Il est possible d’ajouter le parcours OSSU à son profil LinkedIn

Il est recommandé de consulter le site officiel et le dépôt GitHub pour voir la version la plus récente du curriculum

Liste détaillée du curriculum

Prérequis

  • Le tronc commun en informatique nécessite un niveau lycée en mathématiques (algèbre, géométrie, pré-calcul)
  • L’accès au niveau avancé suppose d’avoir terminé tout le tronc commun
  • Les cours d’Advanced systems demandent des bases de physique de niveau lycée

Introduction à l’informatique (Introduction to CS)

  • Premiers pas en informatique. Présente les calculs de base, la programmation impérative, les structures de données, les algorithmes, etc.
  • Cours obligatoire : 'Introduction to Computer Science and Programming using Python' (14 semaines)

Tronc commun informatique (Core CS)

Programmation

  • Pratique large couvrant fonctionnel / orienté objet / tests / patterns / typage / diversité des langages
  • Systematic Program Design, Programming Languages (A–C), Object-Oriented Design, Software Architecture, etc.

Mathématiques

  • Inclut mathématiques discrètes, preuves mathématiques, statistiques de base, notation O, probabilités et calcul différentiel et intégral

Outils et environnement de développement

  • Outils essentiels en pratique : terminal, shell scripting, vim, ligne de commande, gestion de versions (git), etc.

Systèmes

  • Compréhension globale du fonctionnement des ordinateurs, du matériel jusqu’au système d’exploitation et aux réseaux
  • Exemples : projet Nand to Tetris, OS Three Easy Pieces, Networking, etc.

Théorie

  • Inclut l’analyse d’algorithmes, diviser pour régner, graphes, programmation dynamique, problèmes NP, etc.

Sécurité

  • Inclut les bases de la sécurité informatique, le secure coding, l’analyse de vulnérabilités, les réseaux / la cryptographie et d’autres options

Applications

  • Couvre aussi largement les usages concrets comme les bases de données, le machine learning, l’infographie et le génie logiciel

Éthique

  • Met l’accent sur les exigences éthiques essentielles pour les professionnels de la tech : contexte social de la technologie, professionnalisme, propriété intellectuelle, confidentialité des données, etc.

Informatique avancée (Advanced CS)

  • Choix selon le parcours ou les centres d’intérêt : programmation parallèle, compilateurs, langages comme Haskell / Prolog, debugging / testing logiciel
  • Large éventail d’options : architecture des ordinateurs, analyse numérique / logique / probabilités, théorie du calcul, sécurité informatique, construction de systèmes, etc.

Projet final (Final Project)

  • Choix, conception, implémentation et partage d’un projet concret
  • Exemples d’options : service full-stack, robotique, data mining, big data, IoT, cloud computing, data science, développement de jeux, etc.
  • Réalisation libre ou à partir de parcours recommandés

Après l’achèvement du parcours

  • Validation de l’acquisition de connaissances équivalentes à une licence en informatique
  • Recommandations pour la préparation à l’emploi, la lecture approfondie (liste fournie) et la participation à des meetups de développeurs hors ligne
  • Encourage l’exploration de nouvelles technologies (langages comme Elixir / Rust / Idris, etc.)

Règles de fonctionnement et équipe

  • Respect du code de conduite OSSU
  • Explications sur la manière d’indiquer et de gérer sa progression sur GitHub (utilisation d’un kanban)

Principaux responsables d’OSSU

  • Eric Douglas (fondateur d’OSSU), Josh Hanson (mainteneur technique), Waciuma Wanjohi (mainteneur académique), ainsi que d’autres contributeurs dans le monde entier

Conclusion

OSSU ouvre à toutes et tous, partout dans le monde, une voie gratuite pour développer des compétences en informatique au niveau d’un cursus universitaire classique et accéder plus largement aux métiers et parcours du secteur IT moderne.
La combinaison d’un rythme flexible, d’exigences rigoureuses, d’une communauté mondiale et de ressources gratuites de haute qualité constitue un atout majeur face aux autres curricula ouverts.

4 commentaires

 
crawler 2025-05-28

> Je pense que les articles qui disent en gros « n'apprenez pas l'info » passent à côté du vrai sens.

La traduction est vraiment bien sortie, c'est étonnant haha

 
xguru 2025-05-26

OSSU Open Source Society University - Étudier l’informatique en autodidacte

Cela avait été présenté au tout début de GeekNews. Depuis, beaucoup de choses ont été ajoutées.

 
GN⁺ 2025-05-26
Avis sur Hacker News
  • En tant qu’ingénieur expérimenté, je pense qu’OSSU est vraiment un excellent endroit si l’on veut aider les apprenants

    • Ma proposition est la suivante : faire avancer régulièrement son propre side project avec des apprenants d’OSSU sous forme de pair programming ou de travail d’équipe
    • Se familiariser avec un ou plusieurs cours du cursus et répondre aux étudiants qui ont des questions
    • Participer à une réunion hebdomadaire de suivi pour partager ce sur quoi on travaille et écouter aussi ce que font les autres apprenants
    • Pour s’y mettre : aller sur le serveur Discord, puis mentionner @waciuma ou le rôle @tutor
    • Je suis l’un des responsables d’OSSU, et nous sommes convaincus que la communauté, le réseautage et les projets font réellement partie de l’éducation
    • C’est aussi une culture où l’on célèbre non seulement les professeurs et universités qui créent des cours gratuits, mais aussi les nombreux ingénieurs et praticiens qui ont aidé bénévolement les apprenants d’OSSU
    • J’aimerais que vous rejoigniez vous aussi ce groupe
  • Je dirige un programme éducatif qui aide les étudiants à étudier l’informatique de manière autonome. J’utilise aussi souvent le cursus d’OSSU comme ressource de référence

    • L’autoformation a beaucoup d’avantages, mais les étudiants doivent absolument savoir qu’elle comporte aussi des points de vigilance

    • Il faut faire davantage soi-même en matière de « signaling » et de réseautage, et les bénéfices sociaux dont on profite à l’université manquent souvent dans l’autoformation

    • Ne pas avoir de diplôme, c’est être dans une situation de « markedness » ; voir ici pour l’explication

    • Quand on commet une erreur ou qu’on rencontre une difficulté, il est facile d’en attribuer la cause à l’absence de diplôme

    • Certains recruteurs considèrent qu’embaucher quelqu’un sans diplôme est un risque politique, ce qui peut déjà rendre l’entrée dans l’entreprise difficile

    • Ce n’est pas insurmontable, mais c’est précisément pour cela que nous préparons cela avec eux dès le départ

    • Les avantages de l’autoformation sont une vitesse d’apprentissage plus élevée, l’absence de répétition inutile, et la possibilité de tout apprendre avec du contexte

    • Si l’on réalise qu’il manque des bases, on peut revenir en arrière et les apprendre à ce moment-là

    • Je pense que c’est une manière d’apprendre inévitable dans les métiers techniques, mais elle ne convient pas à tous les étudiants

    • En pratique, c’est souvent dommage que des personnes soient « forcées » vers l’autoformation parce que leur situation financière les empêche d’aller à l’université

    • Si l’on ne comprend pas bien les compromis, cela peut être encore plus difficile

    • Référence : Divepod

    • J’ai déjà mentoré plusieurs personnes dans leur parcours d’autoformation

      • L’autoformation comporte toutes sortes de pièges, et si l’on ne fait pas attention, il est facile de s’égarer
      • L’un des pièges qui m’a surpris au début, mais qui m’a ensuite semblé presque évident, c’est qu’en écoutant les plaintes du secteur sur Reddit ou Twitch, on peut facilement finir par croire que les compétences réelles comptent peu et que seules les compétences d’entretien importent
      • Du coup, certains négligent en pratique leurs compétences de code ou leurs projets pour tout miser sur LeetCode, ou mettent sur GitHub des projets inachevés avec juste un README bien présenté
      • Ils se concentrent uniquement sur la mémorisation de réponses, comme avec le format d’entretien S.T.A.R.
      • Cette stratégie a fonctionné pendant un temps, mais les entreprises savent désormais mieux filtrer les « pros de l’entretien »
      • Cet état d’esprit n’est pas propre aux autodidactes : à l’université aussi, certains ne visent que le diplôme et trichent tout en négligeant l’apprentissage réel
      • Une fois diplômés, ils se retrouvent malgré tout pris au dépourvu en entretien, contrairement à ce qu’ils espéraient
  • Quand j’étais jeune, juste après le lycée, je n’ai pas su terminer correctement mon diplôme de CS, ce qui m’a fait rater de bonnes opportunités

    • Après m’être marié et avoir eu des enfants, j’ai rapidement terminé un diplôme en IT, mais ce que j’ai toujours préféré, c’était la CS
    • Il y a quelques années, j’ai jugé qu’achever sérieusement une formation en CS m’aiderait beaucoup dans ma carrière
    • J’ai envisagé plusieurs options — second bachelor, post-bac, bootcamp, etc. — et j’ai finalement choisi OSSU
    • Cela a pris plus de temps que prévu (la vie a toujours ses imprévus), mais je n’ai que du bien à dire du cursus. Cela a amélioré non seulement ma carrière, mais aussi ma satisfaction de vie
    • J’ai raconté sur mon blog pourquoi j’ai choisi OSSU et mon retour d’expérience : premier billet de blog
  • Personnellement, je pense que Teach Yourself CS est une meilleure alternative

    • Moi aussi, j’avais regardé Teach Yourself CS pour compléter mes études en informatique
      • Mais l’absence de communauté a été la raison principale pour laquelle j’ai choisi OSSU
      • Ma question est la suivante : étant donné l’importance de la communauté, pourquoi pensez-vous que Teach Yourself CS est meilleur qu’OSSU ?
      • Pour information, je suis le « social organizer » d’une cohorte OSSU et j’écris aussi parfois des billets de blog sur mon expérience avec OSSU
  • Je suis la preuve qu’on peut tout à fait construire une carrière uniquement par l’autoformation

    • Je travaille déjà dans le secteur depuis plus de 20 ans

    • Mais en choisissant cette voie, il existe clairement des entreprises et des rôles auxquels on n’accédera « jamais »

    • En général, il s’agit des meilleures entreprises, de celles qui paient le plus, et des postes offrant les meilleures conditions

    • Plus que le diplôme lui-même, ce qui compte encore davantage, c’est le réseau d’anciens. Avec un diplôme, il existe un « grand club » dans lequel certains recrutent systématiquement les diplômés de leur école

    • En autoformation, on n’aura jamais ce réseau

    • La réalité ? Il ne reste souvent que les emplois que les autres refusent : endroits absurdes, arnaques, startups sous-financées, entreprises déjà en difficulté

    • Et même lorsqu’on décroche exceptionnellement un bon poste, il est difficile d’y rester longtemps

    • Le salaire est plus faible, et le risque d’être exploité est plus grand

    • Il est aussi plus difficile d’obtenir plusieurs offres, donc sa position sur le marché se réduit

    • À cause de cela, toute la carrière peut finir par suivre une trajectoire financièrement complètement différente

    • La recherche d’emploi est bien plus difficile, au point de devoir fournir deux fois plus d’efforts

    • On se retrouve souvent confronté à des doutes, venant de soi-même comme des collègues, un peu comme un complexe d’illégitimité

    • La moindre erreur peut avoir des conséquences énormes

    • Cela reste mieux que de ne rien faire du tout, mais si l’on en a l’occasion, je pense qu’il vaut mieux aller à l’université

    • Sans vouloir minimiser votre expérience, j’ai moi-même travaillé dans divers types d’entreprises — grands groupes, unicorns, startups, etc. — en étant 100 % autodidacte

      • J’ai passé des entretiens chez Google et Citadel, reçu une offre de Meta, et je n’ai jamais vu mes opportunités bloquées ni subi de suspicion
      • Je gagne plus de 200 000 dollars par an en cash, et je bénéficie aussi d’actions et d’avantages dans une startup early-stage
      • J’ai connu deux exits ; je ne suis pas riche, mais selon les standards habituels je suis largement à l’aise
      • Je n’ai jamais subi de préjudice économique à cause de mon parcours scolaire
      • Le fait d’avoir commencé la programmation et les startups dès 19 ans a peut-être constitué un avantage de départ
      • C’était peut-être aussi une question de chance, mais je pense que conseiller aux jeunes de ne surtout pas suivre l’autoformation peut au contraire leur nuire
    • J’ai travaillé quelques années comme développeur logiciel, puis je suis retourné à l’université pour obtenir un diplôme en CS

      • J’avais déjà 90 crédits avec une spécialisation en histoire, puis j’ai étudié pendant 3 ans dans un cursus structuré
      • Je pense que cette approche a énormément amélioré mon niveau en développement
      • On peut le faire seul, mais la plupart des gens n’atteignent jamais ce niveau
      • J’ai bien connu des développeurs autodidactes meilleurs que moi, mais j’ai quand même le sentiment qu’ils auraient été encore meilleurs avec un vrai programme de CS sur 4 ans
    • Ce que vous dites est vrai dans une certaine mesure, mais surtout au début de carrière et quand on se situe dans le bas du groupe par rapport à ses pairs

      • Ensuite, les capacités de réseautage et la chance — bien plus importante qu’on ne le pense — deviennent déterminantes
      • L’université apporte en début de carrière une preuve de confiance, l’idée qu’on peut suivre le rythme, ainsi que la « validation » du diplôme
      • On y construit un réseau pendant ce temps, mais après les un ou deux premiers emplois, l’utilité du diplôme diminue fortement
      • Dans mon cas (simple anecdote personnelle), j’ai commencé sans diplôme puis, plus de dix ans plus tard, j’en ai obtenu un pour le plaisir
      • Professionnellement, cela n’a eu aucune valeur, et toutes mes opportunités par la suite sont venues de recommandations et de références de collègues du métier
      • Le diplôme a en revanche été une excellente occasion d’aborder des sujets auxquels je ne me serais pas attendu
    • Je suis probablement proche du TDAH, et aussi quelque part sur le spectre autistique

      • Je suis allé trois fois à l’université, mais j’ai abandonné à chaque fois à cause du coût, de l’ennui et de problèmes personnels, dont le décès de mon père d’un cancer
      • J’ai commencé ma carrière du support technique dans une entreprise de compilateurs C, puis je suis devenu développeur
      • J’ai ensuite travaillé pour la Bourse de New York, une grande société de courtage, une fintech bien connue, ainsi qu’en conseil pour des banques et des entreprises de paiement
      • J’ai toujours eu l’habitude d’apprendre seul, donc l’environnement universitaire ne me convenait pas
      • Dans le développement, le diplôme n’a presque jamais été un problème ; en réalité, personne ne s’en est jamais soucié
      • Pour les métiers du développement logiciel en particulier, le diplôme a très peu, voire aucune importance
    • On oublie souvent dans cette discussion que la principale raison d’étudier l’informatique n’est pas forcément de trouver un emploi ou de progresser professionnellement

      • Le vrai moteur, c’est aussi le plaisir
      • On peut prendre plaisir toute sa vie à la discipline elle-même, et y trouver une grande satisfaction aussi bien dans la programmation pratique que dans la théorie, les bases mathématiques du calcul et l’histoire de l’informatique
      • Je pense que les articles disant en substance « n’étudiez pas la CS » passent complètement à côté de l’essentiel
  • Je me demande si le fait que le cursus soit composé uniquement de cours « gratuits et open source » ne constitue pas justement une limite

    • Si l’on veut étudier sérieusement, il ne faut pas hésiter à investir aussi dans des ressources de qualité payantes

    • Je suis d’accord avec cet avis

      • Par exemple, pour le cours de mathématiques discrètes, beaucoup disent — même sur le serveur Discord — que le cours du MIT n’arrive pas à la hauteur d’un bon manuel
      • Mais il n’existe pratiquement pas de manuels gratuits/open source de grande qualité
      • Moi aussi, j’étudie avec OSSU, mais j’utilise Discrete Mathematics with Applications de Susanna Epps (50 $ d’occasion)
      • Cela sort du cursus officiel, mais j’ai quand même le sentiment de faire OSSU
  • Je pense qu’un diplôme compense la plupart des faiblesses sociales

    • Le bout de papier envoie le signal suivant : « J’ai investi 3 ou 4 ans dans ce domaine, et je possède au minimum un certain niveau d’intelligence et d’engagement »
    • Même si l’on manque d’aisance sociale, c’est un avantage de l’avoir
    • En autodidacte, on n’a pas ce signal ; il faut donc soit être excellent en réseautage/communication, soit avoir énormément de chance
    • En pratique, si l’on a d’excellentes compétences sociales, on devient presque imbattable, et même avec des compétences techniques limitées, on peut résoudre beaucoup de choses par la parole
  • Dans beaucoup de commentaires, on mélange l’idée que l’école crée un réseau avec celle selon laquelle certaines entreprises n’embauchent que des diplômés de certains établissements

    • Il est vrai que les opportunités augmentent grâce au réseau que l’on se constitue à l’université et au fil de sa carrière

    • Mais à mesure que la carrière avance, la force du réseau construit après l’université devient plus importante

    • Les postes qui exigent un diplôme d’une université précise ou un doctorat relèvent moins du réseau que du « signal »

    • Autrement dit, c’est un signal fiable auquel le recruteur n’a pas besoin de demander davantage de preuves

    • Les autodidactes doivent contourner cela ou fournir un effort supplémentaire

    • Ils doivent s’orienter vers des moyens de se faire remarquer par leurs relations ou par leur travail, ou obtenir des recommandations pour contourner le processus de recrutement classique

    • Quand j’entends « des opportunités qui disparaissent complètement », cela me fait penser à l’idée que la chance n’est pas une stratégie, mais qu’en multipliant les tentatives, on augmente la probabilité d’en avoir

      • Le réseau, c’est justement une manière d’augmenter le nombre d’opportunités
      • J’ai d’ailleurs un ami qui a trouvé un nouvel emploi grâce au réseau qu’il s’est constitué dans la ligue de softball de son entreprise
  • Je me demande quel est exactement l’objectif

    • Si le but est vraiment de trouver un emploi, je pense qu’une formation de community college serait plus pratique
    • Si l’objectif est purement de gagner de l’argent, je pense au contraire qu’une approche à la neal.fun ou levels.io irait plus vite
    • Et s’il n’y a même pas de diplôme au bout, peut-être qu’une stratégie YOLO est préférable
    • Au final, ne reste-t-il pas seulement la curiosité intellectuelle pure, le fait d’apprendre uniquement pour le plaisir ?
  • Je trouve un peu dommage que, dans ce genre de débat, les deux camps adoptent une posture excessivement défensive

 
soonil 2025-05-29

Vraiment génial.