Apprendre à coder

De Movilab
Aller à :navigation, rechercher


Circle coworking.png Type de page : Ressources pédagogiques et techniques

Objectif de cette page[modifier | modifier le wikicode]

MetaMedia2-1024x617.jpg

Avec l'arrivée massive des solutions d'apprentissage aux codes informatiques en ligne ou en présentiel, nous sommes de plus en plus nombreux à nous plonger dans cette exercice de l'auto apprentissage.

Les questions fréquentes : Quelle(s) plateforme(s) utilisez vous ? En avez vous essayé d'autres ? Pourquoi avoir choisi celle(s) ci ? Quels sont les points importants à connaitre avant de se lancer ? Ou trouvez vous de l'aide ? Quels projets avez vous réalisé ? etc.

Ces questions nous nous les sommes tous posé, alors pour ne pas ré-inventer la roue et permettre au plus grand nombre de passer à l'action, merci à tous les contributeurs qui le souhaiterons de venir ici partager vos expériences.


Pourquoi apprendre à coder ?[modifier | modifier le wikicode]

"Le code c'est la loi !" - devise libriste

Il y a mille et une bonne raison d'apprendre à coder, mais la plus importante à nos yeux est sans nul doute celle de conserver notre liberté à l'ère des villes (ultra) connectées dites "intelligentes" !


Chez les adolescents et les gamers chevronnés, le jeu Watch Dogs en est une bonne illustration :

"Quand vous avez accès à toutes ces informations, est il possible de les ignorer ?"


État d'esprit[modifier | modifier le wikicode]

Le conseil qui revient fréquemment est de vouloir apprendre à coder pour créer ou développer un projet précis. Tout apprendre sera impossible, mieux vaut donc vous concentrer sur quelque chose de concret et réalisable.

Culture[modifier | modifier le wikicode]

Choix éthique[modifier | modifier le wikicode]

Un "codeur" n'est pas (nécessairement) un "Hacker". Si votre objectif est de vouloir apprendre le code pour braquer une banque ou effacer votre mauvaise note de votre dernier TP d'histoire à l'école... il fallait naitre dans les années 80 !

Comment apprendre à coder ?[modifier | modifier le wikicode]

Source : code.org

La version académique[modifier | modifier le wikicode]

- Bac scientifique - École d'ingénieur - Université

La version accompagnée[modifier | modifier le wikicode]

De nombreuses startups se sont montées ces dernières années pour accompagner les citoyenss aux métiers autour du code.

Simplon.co qui s'est spécialisée sur les jeunes dans les quartiers en est un bon exemple.



La version autodidacte[modifier | modifier le wikicode]

ApprendreAcoderMag.jpg

En s'amusant[modifier | modifier le wikicode]

Le ludique a toujours été un fantastique moteur pour l'apprentissage. Il nous permet d'apprendre sans même s'en rendre compte. Beaucoup de gens l'ont bien compris et depuis des années on a vu fleurir un peu partout ce qu'on appelle communément des serious games, et ce que tout un tas de sujets, l'écologie, la citoyenneté, le numérique...

En réalité c'est souvent mal codé, pas toujours très pédagogique, mais surtout incroyablement ennuyeux. Pour l'apprentissage du code on a de la chance, pour une fois on est face à quelques perles du genre. Ludique, prenant, proposant un vrai gameplay.

Voici une liste non-exhaustive de ce qu'il existe et ce qu'ils nous permettent d'apprendre :

CodeCombat[modifier | modifier le wikicode]

CodeCombat.jpg


Dans ce jeu de rôle, vous incarnez un guerrier qui doit traverser tout un tas de donjons. Classique ! Sauf que tout les ordres que vous donnez doivent l'être en ligne de code. La difficulté est évolutive et le gameplay se diversifie vraiment au fil du jeu. On peut jouer en utilisant soit le Python, soit le Javascript.


Studio Code[modifier | modifier le wikicode]

Ce site permet de s'initier au code par blocs (visuals coding) avec de nombreux cours et exemples.

Le site Code.org propose des initiations ludiques aux élèves, aux enseignants et aux éducateurs.

Comme Scratch, la création de programme repose sur des blocs de codes visuels à empiler les uns sur les autres. Un clic entraîne => l'action X.

Pour démarrer le tuto du Code de Flappy Bird est très bien.


Animation Scratch[modifier | modifier le wikicode]

Voir la page Movilab dédiée.


Les magazines[modifier | modifier le wikicode]


Les tutoriels[modifier | modifier le wikicode]


Les sites et forums[modifier | modifier le wikicode]


Les amis[modifier | modifier le wikicode]


Ou apprendre à coder ?[modifier | modifier le wikicode]

Dans la "vraie" vie[modifier | modifier le wikicode]


En ligne[modifier | modifier le wikicode]

Top 10 des meilleurs sites pour apprendre à coder


De quoi parlons nous ?[modifier | modifier le wikicode]

Programmation informatique[modifier | modifier le wikicode]

Codecademy-2.jpg
Wikipedia logo.jpg

Dans le domaine de l'informatique, la programmation est l'ensemble des activités qui permettent l'écriture des programmes informatiques. C'est une étape importante du développement de logiciels (voire de matériel).

Pour écrire un programme, on utilise un langage de programmation. Un logiciel est un ensemble de programmes (qui peuvent être écrits dans des langages de programmation différents) dédié à la réalisation de certaines tâches par un (ou plusieurs) utilisateurs du logiciel.

La programmation représente donc ici la rédaction du (ou des) code source d'un logiciel. On utilise plutôt le terme développement pour dénoter l'ensemble des activités liées à la création d'un logiciel et des programmes qui le composent (cela inclut la spécification du logiciel, sa conception, puis son implémentation proprement dite au sens de l'écriture des programmes dans un langage de programmation bien défini et aussi la vérification de sa correction)...


Lire et améliorer toute la définition sur Wikipédia


Les langages[modifier | modifier le wikicode]

Langage de programmation[modifier | modifier le wikicode]

Wikipedia logo.jpg

En informatique, un langage de programmation est une notation conventionnelle destinée à formuler des algorithmes et produire des programmes informatiques qui les appliquent. D'une manière similaire à une langue naturelle, un langage de programmation est composé d'un alphabet, d'un vocabulaire, de règles de grammaire, et de significations.

Les langages de programmation permettent de décrire d'une part les structures des données qui seront manipulées par l'appareil informatique, et d'autre part d'indiquer comment sont effectuées les manipulations, selon quels algorithmes. Ils servent de moyens de communication par lesquels le programmeur communique avec l'ordinateur, mais aussi avec d'autres programmeurs; les programmes étant d'ordinaire écrits, lus, compris et modifiés par une équipe de programmeurs.

Un langage de programmation est mis en œuvre par un traducteur automatique: compilateur ou interpréteur. Un compilateur est un programme informatique qui transforme dans un premier temps un code source écrit dans un langage de programmation donné en un code cible qui pourra être directement exécuté par un ordinateur, à savoir un programme en langage machine ou en code intermédiaire2, tandis que l'interpréteur réalise cette traduction 'à la volée'.

Les langages de programmation offrent différentes possibilités d'abstraction, et une notation proche de l'algèbre, permettant de décrire de manière concise et facile à saisir les opérations de manipulation de données et l'évolution du déroulement du programme en fonction des situations. La possibilité d'écriture abstraite libère l'esprit du programmeur d'un travail superflu, notamment de prise en compte des spécificités du matériel informatique, et lui permet ainsi de se concentrer sur des problèmes plus avancés2.

Chaque langage de programmation supporte un ou plusieurs styles de programmation - paradigmes. Les notions propres au paradigme font partie du langage de programmation, permettant au programmeur d'exprimer dans le langage de programmation une solution qui a été imaginée selon ce paradigme.

Les premiers langages de programmation ont été créés dans les années 1950. De nombreux concepts de l'informatique ont été lancés par un langage, avant d'être améliorés et étendus dans les langages suivants. La plupart du temps la conception d'un langage de programmation a été fortement influencée par l'expérience acquise avec les langages précédents.


Lire et améliorer toute la définition sur Wikipédia


Liste des principaux langages de programmation[modifier | modifier le wikicode]

Wikipedia logo.jpg Lire la définition et améliorer la liste complète sur Wikipédia.

Tutoriels et cours[modifier | modifier le wikicode]


Les outils[modifier | modifier le wikicode]

Infrastructures[modifier | modifier le wikicode]

  • Ordinateurs
    • Fixes : puissance, multi écran, confort...
    • Portables : liberté, nomadisme, isolement...
  • Tablettes


Logiciels[modifier | modifier le wikicode]


Hébergement et partage de codes[modifier | modifier le wikicode]


Pages Movilab liées[modifier | modifier le wikicode]

Soutenir Movilab

Vous pensez que nous allons dans le bon sens ? Si vous en avez l'envie nous vous invitons à nous rejoindre ou à faire un don.