Swift sera enseigné à plusieurs dizaines de milliers d'étudiants américains

Florian Innocente |

Swift va être enseigné dans 30 regroupements d'universités américaines à travers les États-Unis. Des "Community colleges", équivalents à nos IUT. Apple en a fait l'annonce à Austin, où Tim Cook devrait se rendre aujourd'hui. Ce programme, dans cette seule région du Texas, concernera 74 000 étudiants.

Les cours se dérouleront toute l'année avec l'objectif de former ces étudiants, inscrits dans des cycles informatiques, aux subtilités du langage Swift. Et avec certainement l'espoir chez Apple d'en faire, à terme, des développeurs attachés à travailler de préférence sur ses plate-formes.

Cet enseignement, développé conjointement entre des professeurs et des ingénieurs d'Apple, avait été déjà lancé dans une poignée d'universités, il passe à la vitesse supérieure pour l'année 2017/2018.

Tags
avatar Nico S | 

Un peu dommage d'enseigner les bases de la programmation en utilisant un écosystème fermé.

avatar jujuhtst | 

Swift est opensource et fonctionne sous différents OS, pas besoin d'un Mac pour le faire fonctionner !

avatar enka | 

Swift n'est pas fermé.
Donc même su tu apprend Swift sur Mac, rien ne t'empêche de l'utiliser ailleurs.

Et de toute façon, tu ne peux pas apprendre tous les langages à la FAC. Par contre en connaitre un, te permet de te mettre aux autres plus facilement.

avatar BeePotato | 

@ Nico S : « Un peu dommage d'enseigner les bases de la programmation en utilisant un écosystème fermé. »

Non, pas vraiment.

avatar IceWizard | 

@Nico S
"Un peu dommage d'enseigner les bases de la programmation en utilisant un écosystème fermé. »

Un peu dommage de confondre « initiation grand-public à la programmation » et « militantisme techno-geek stérile » dont le grand-public se fiche royalement.

avatar jerome74 | 

"Swift n'est pas fermé, rien ne t'empêche de l'utiliser ailleurs.": oui et non; un langage n'est pas d'une grande utilité s'il ne donne pas accès aux API de la plateforme qu'on veut utiliser. Peut-on utiliser, directement ou indirectement, les API Windows ou Android en utilisant Swift? (je ne connais pas la réponse)

avatar Nico S | 

@jerome74

Oui, c'était à ça que je pensais en écrivant mon message. Et la réponse est non, on ne peut pas accéder au API de Windows via Swift. Swift n'existe pas non plus sur Windows, d'ailleurs.

Bien que le langage soit open source et a des vœux de sortir du cadre "développement iOS et Mac", la réalité est qu'à part quelques projets sympathiques genre Vapor, Swift n'est pas utilisé en prod hors de l'écosystème d'Apple.

On comprends donc aisément que le but ici est de vendre du Mac et de l'iOS plus que de former des gens à la programmation.

avatar occam | 

@Nico S

On peut tout à fait utiliser Swift SUR Windows 10, à condition de ne pas vouloir coder POUR Windows.

Option 1, la plus simple : lancer IBM Sandbox depuis le browser.
https://swift.sandbox.bluemix.net/#/repl
Et voilà, il ne reste qu'à taper du Swift.

Option 2, Swift dans un container Docker, comme sur Linux (voyez sur GitHub).
Encore une fois, ça ne marche que sur Windows 10, et ça ne donne évidemment pas accès aux API de la Dark Side.

Mais si vous avez une idée de génie pour la prochaine app du siècle, p. ex. pour ubériser Uber ou pour tayloriser Taylor Swift, et pas de Mac sous la main, la bécane W10 fera l'affaire, pour commencer.

avatar Nico S | 

@occam

Option 1: on ne peut pas créer d'exécutable ni de programme un brin complexe. Ça reste un REPL.

Option 2: à l'inverse de Ruby, Python, Java, C++, C#, etc... qui fonctionnent et s'exécutent sur Windows, Linux et macOS, on ne peut pas exécuter du code Swift sur Windows ni le compiler. C'est pour cela que je trouve ce choix dommage et ne le considère que comme une manœuvre de la pomme pour vendre son écosystème plutôt que de vraiment s'intéresser à l'éducation de programmeurs.

avatar BeePotato | 

@ Nico S : « on ne peut pas exécuter du code Swift sur Windows ni le compiler. »

Tu parlais d'enseigner les bases de la programmation. Je ne vois pas en quoi le fait de pouvoir compiler pour Windows fait partie de ces bases ou est indispensable à leur apprentissage.

« C'est pour cela que je trouve ce choix dommage et ne le considère que comme une manœuvre de la pomme pour vendre son écosystème plutôt que de vraiment s'intéresser à l'éducation de programmeurs. »

À te lire, on croirait que ces deux options sont totalement exclusives. Mais pourquoi le seraient-elles ?
Apple peut tout à fait s'intéresser réellement à l'éducation des programmeurs tout en considérant que sa plateforme est le meilleur choix pour eux — et c'est tant mieux, car il serait un peu inquiétant qu'Apple considèrent sa propre plateforme comme inadaptée au développement.

Et objectivement, c'est réellement un bon environnement pour l'apprentissage. Swift est un langage tout aussi acceptable qu'un autre pour l'enseignement des bases de la programmation (et pas seulement des bases). On peut même trouver assez facilement des arguments comme quoi il est plus adapté à ce rôle que quelque chose comme C++.

Et si, une fois ces bases acquises, le cours poursuit sur l'utilisation des frameworks d'Apple… et bien là, ce sera carrément une très bonne chose. Cocoa est en effet plutôt bien fait et permet d'apprendre d'emblée certaines bonnes habitudes. Il est, à mon avis, tout à fait recommandable comme premier exemple d'un framework de ce genre.

Après avoir acquis de bonne bases dans cet environnement, rien n'interdit à l'apprenti développeur d'élargir ses connaissances en allant voir ailleurs (au contraire, même, tout l'y encourage).
Il n'y a donc rien de choquant à utiliser cet environnement pour l'enseignement.

avatar ZANTAR2054 | 

Et en France? ?

avatar iPop | 

@ZANTAR2054

C'est un pays avec des gens ?

avatar Gillesgilles2 | 

En même temps est-ce que les api Windows sont utilisable sur mac ou android ?

avatar Nico S | 

@Gillesgilles2

Est-ce que les citrons ont un goût de fraises ?

avatar pommedor | 

Windows est devenu un langage de programmation ?

avatar Vetsa | 

@pommedor

On parle d'environnement de travail en citant Windows dans le cas présent. Et non il n'existe pas de langage de programmation du nom de Windows ! Mais bon je pense que tu le savais déjà....

avatar occam | 

@Vetsa

"Et non il n'existe pas de langage de programmation du nom de Windows !"

Pour être tout à fait exact, ce n'est pas entièrement vrai, puisqu'il existe bien le "Windows PowerShell" pour le .NET Framework.

avatar DylanPerdigao | 

Franchement c’est pas compliqué

avatar Bigdidou | 

Ce sui serait intéressant, c’est d’initier des étudiants (en option, éventuellement) qui font des études qui n’ont rien à voir.
Dans l’idée d’être autonomes pour écrire des petits scipts ou des petits utilitaires perso.
J’adorerais maitriser ça et ça aurait été formidable si on me l’avait appris pendant mes études de médecine (bon, ça existait pas…)

avatar BeePotato | 

@ Bigdidou : « J’adorerais maitriser ça et ça aurait été formidable si on me l’avait appris pendant mes études de médecine (bon, ça existait pas…) »

Swift n'existait certes pas. Mais ces études remontent-elles à un temps tellement ancien qu'il n'existait rien d'autre non plus ? Même pas un petit BASIC à se mettre sous la dent ?

avatar Bigdidou | 

@BeePotato

« Même pas un petit BASIC à se mettre sous la dent ? »
Si, si, sur des Apple II
Mais sans grande portée pratique... Mais c’était déjà ça, c’est vrai.
Bref, c’était simplement pour dire que l’utilité d’apprendre des bases de programmation, me semblait aujourd’hui dépasser le cadre des étudiants en informatique.

C’est un peu compliqué c’s forums, sincèrement, où la moindre réflexion devient sujet à remarque polémique, oubliant complètement le message principal qu’on voudrait faire passer…

avatar BeePotato | 

@ Bigdidou : « Bref, c’était simplement pour dire que l’utilité d’apprendre des bases de programmation, me semblait aujourd’hui dépasser le cadre des étudiants en informatique. »

Je suis tout à fait d'accord.
Ce qui est ironique, c'est qu'à l'époque des Apple II, on avait plus tendance que maintenant à expliquer que la programmation pouvait servir à tout le monde et que tout un chacun pouvait s'écrire en BASIC tous les programmes qu'il voulait pour gérer de multiples aspects de sa vie quotidienne. Alors qu'en fait, comme tu l'as dit, c'était moins vrai alors que maintenant.

Cela dit, ça fait tout de même un moment qu'on voit des outils permettant un développement assez efficace par des non informaticiens : HyperCard en était un parfait exemple (mais parfois, je me demande s'il n'en a pas été le seul exemple).

« C’est un peu compliqué c’s forums, sincèrement, où la moindre réflexion devient sujet à remarque polémique, oubliant complètement le message principal qu’on voudrait faire passer… »

Dans le cas présent, ce n'était pas une remarque se voulant polémique. Il s'agissait de pure curiosité.

avatar Bigdidou | 

@BeePotato

« Dans le cas présent, ce n'était pas une remarque se voulant polémique. Il s'agissait de pure curiosité. »
Ok, désolé, autant pour moi.
Ma parano plus l’ambiance générale des forum.
Et oui, pour ta remarque initiale : on nous apprenait effectivement plus de trucs du temps de l’Apple II ;)

avatar BeePotato | 

@ Bigdidou : « Ok, désolé, autant pour moi. »

Nan, c'est moi — j'aurais dû mettre un smiley. :-)

« Et oui, pour ta remarque initiale : on nous apprenait effectivement plus de trucs du temps de l’Apple II ;) »

Ouaip. J'en ai bien profité à l'époque.
Je ne sais pas ce que ça donnerait si je débutais maintenant (malgré la profusion, il faut bien le reconnaître, d'outils disponibles de nos jours permettant de se mettre à la programmation).

avatar TontonBen | 

Il y a pas mal de mauvaise foi à contredire Nico S quand il dit que c'est fermé. 99% du temps, lorsqu'on vous apprend Swift, c'est pour exploiter UIkit et consorts, donc uniquement l'écosystème Apple (et principalement l'IDE Xcode, parce que pareil, qui code réellement une UI en Swift sans Xcode ?). C'est comme dire qu'enseigner le C# n'enferme pas dans Windows ou Visual Studio parce qu'il peut vaguement tourner ailleurs. Franchement, quand on code, combien de temps passe-t'on à apprendre les subtilités du langage, et combien passe-t'on à apprendre les API système et les finesses du compilo ? Donc, oui, c'est fermé, on va dire à 99%. Tout comme ce serait proprio à 99% d'apprendre le C#.

avatar sachouba | 

Excellente idée, les étudiants qui ont appris le Flash pourront se reconvertir dans un nouveau langage stable, durable et à l'avenir flamboyant.

avatar Nico S | 

@sachouba

Je pense que Swift a de l'avenir. Apple ne va pas disparaître demain. En revanche, je ne retiens pas mon souffle pour voir une adoption massive hors de l'écosystème Apple.

avatar IceWizard | 

@Bigdidou
"Bref, c’était simplement pour dire que l’utilité d’apprendre des bases de programmation, me semblait aujourd’hui dépasser le cadre des étudiants en informatique. »

Cela ne date pas d’hier. Il y a une vingtaine d’année, j'ai donné plusieurs cours d’initiation à la programmation dans un club d’informatique (QBasic, Visual Basic et un peu de Turbo Pascal). En plus des geeks classiques de 13 à 18 ans, j’ai eu des élèves au profil très hétéroclite :

- un plombier
- un médecin
- un policier
- un éboueur (hé oui, même quelqu’un exerçant une activité aussi manuelle peut avoir de la curiosité pour la programmation)
- un gardien de prison, dont l'objectif était de créer un atelier informatique pour ses prisonniers
- un animateur social, voulant organiser une activité informatique pour les jeunes dont il s'occupait
- un homme d’affaire (pas doué, mais qui cherchait a acquérir des connaissances pour avoir un sujet de conversation avec son fil de 13 ans, enfermé dans une bulle dans une clinique).

avatar Bigdidou | 

@IceWizard

Et ça a donné quoi ?
Tu as l’impression que ça a été utile et tu recommencerais bien, ou les gens ont lâché l’affaire rapidement ?

« Je ne sais pas ce que ça donnerait si je débutais maintenant (malgré la profusion, il faut bien le reconnaître, d'outils disponibles de nos jours permettant de se mettre à la programmation). »
J’ai trouvé ça totalement hors de ma portée, enfin, tout seul.
J’aurais bien aimé pouvoir concevoir de petits unitaires médicaux pas très complexes sur le plan de la programmation, dont certains n’existent pas, ou mal fagotés et en anglais seulement.
Dans une autre vie ;)

avatar IceWizard | 

@Bigdidou
"Et ça a donné quoi ?
Tu as l’impression que ça a été utile et tu recommencerais bien, ou les gens ont lâché l’affaire rapidement ? »

A ma connaissance, aucun de mes élèves n’a créé de Startup, mais la plupart ont suivis les cours jusqu’au bout, sans décrocher, ce qui est pas mal. Et ils étaient plutôt content. J’ai dus avoir dans les 10 à 20% de « pertes ».

Je l’ai fait pendant plusieurs années, en adaptant le contenu à chaque fois, avec toujours un contenu très orienté graphisme et programmation de jeux vidéos, nettement plus attractif et visuel pour les novices que gestion de base de données.

La clé c’est beaucoup de pratique et un peu de théorie. En motivant en permanence les gens avec des choses intéressantes et visuelles (plus facile à dire qu’a faire). Et consacrer au moins un tiers du cours à répondre aux questions, au lieu de faire un cours magistral. C’est fondamental quand les élèves ont des niveaux de formation très différent, manquant de connaissances techniques de base.

J’ai arrêté quand j’ai quitté la région parisienne, pour aller voir d’autres cieux. J’envisage de recommencer "de façon plus moderne" en créant un MOOC sur Udemy, depuis que j’ai suivis les cours en vidéo du professeur Fabrice Kordon (plate-forme edx).

-----
@Bigdidou
« Je ne sais pas ce que ça donnerait si je débutais maintenant (malgré la profusion, il faut bien le reconnaître, d'outils disponibles de nos jours permettant de se mettre à la programmation). »
J’ai trouvé ça totalement hors de ma portée, enfin, tout seul.

Tu devrais essayer les cours en ligne, comme par exemple « Apprendre à programmer en Swift 4 pour iOS 11 » de Maxime Britto. C’est 3 heures de formation vidéo pour les débutants.

https://www.udemy.com/apprendre-a-programmer-en-swift-4-pour-ios-11/learn/v4/overview

C’est gratuit, en français et plutôt bien fait.

La même formation gratuite est disponible sur le site de Maxime, sous le titre de : « iOS 11 et Swift 4 : codez votre première application iOS ».

http://www.purplegiraffe.fr

--------
@Bigdidou
"J’aurais bien aimé pouvoir concevoir de petits unitaires médicaux pas très complexes sur le plan de la programmation, dont certains n’existent pas, ou mal fagotés et en anglais seulement. »

Si tu accroches au cours d’introduction de Maxime, il reste peut-être de l’espoir pour toi ..

CONNEXION UTILISATEUR