Follow Slashdot blog updates by subscribing to our blog RSS feed

 



Forgot your password?
typodupeerror
×
Education Programming United States Apple

West Virginia Taps Apple To Teach Teachers To Teach Kids Swift 141

theodp writes: We fundamentally believe that coding is a language and that just like other languages are required in school, coding should be required in school," Apple CEO Tim Cook declared in 2016 as Apple coincidentally prepared to launch its Swift Playgrounds app to teach kids to code. Cook later touted Swift as the first programming language that wasn't "too geeky" for students. As such, Cook must be delighted that the West Virginia Dept. of Education (WVDE) has turned to Apple to provide WV teachers with free Professional Development in computer science in order to bring CS to every K-12 student in every WV school as part of its CodeWV initiative. Not too surprisingly, the Apple "Everyone Can Code" curriculum that teachers will be taught to teach requires up-to-date Apple devices and Swift.

Apple's efforts to sell WV on Swift date back to at least 2017, when an Apple lobbyist and Apple employees who refused to disclose their names pitched their wares to WVDE Board members in a controversial closed-door meeting. Teachers seeking an alternative to Apple's professional development do have the option of attending a "$3,000 professional learning program [curriculum] at no cost to them or their school/district thanks to the generous support from [tech-bankrolled and led] Code.org and the West Virginia Department of Education." Like Apple, Code.org has a registered WV education lobbyist.

So, will tech's race to make U.S. kids CS savvy go to the Swift?
This discussion has been archived. No new comments can be posted.

West Virginia Taps Apple To Teach Teachers To Teach Kids Swift

Comments Filter:
  • Great idea (Score:2, Insightful)

    by Dunbal ( 464142 ) *

    Kids are graduating barely able to read and write or do basic arithmetic. Let's teach them to program surely that will fix everything.

    Here's a hint: those who are motivated enough to learn it will learn it regardless. The vast majority who couldn't care less will find it as useful as that foreign language class.

    • Re:Great idea (Score:5, Insightful)

      by lgw ( 121541 ) on Tuesday March 10, 2020 @10:37PM (#59816882) Journal

      Here's a hint: those who are motivated enough to learn it will learn it regardless.

      Maybe. I mean, some of then surely will. But just as surely, a class will bring in more competent people overall than not having one. Some people just have a home environment that makes self-study very hard, but set aside time in school and more people will discover the joy of coding.

      The real question is: will Bob Wheeler [youtube.com] find this more appealing than the seductive glamour of worm farming?

      • set aside time in school and more people will discover the joy of coding.

        I don't know about you, but I didn't discover the joy of reading a book in school. School forced me to pay attention to certain aspects of books that were extremely lame. In fact, I ended up hating pretty much every one of the so called literary classics that I was forced to read in school, and then seeing the finer points of the ones that were banned in school. Oh and then there was all of that Dewey Decimal shit that turned out to be pretty useless after all.

        Personally, I never needed any books or classes

    • by gweihir ( 88907 )

      I fully agree. I do have trouble understanding one thing though: Why does this utterly moronic idea keep cropping up? The industry cannot really want even more bad coders at this time, it should by now be well known that it does not make sense letting people without a real clue writing code. So why?

      • If you flood the market with incompetent coders, it becomes easier to justify lower costs for competent ones... "Look how many applicants for the job! We don't need to pay so much..."
        • This is probably one of your most silliest posts ever ...

          • I guess supply and demand don't apply? If you have millions of new coders, the pay for coders - on average - will drop. Your claim my post is silly, is silly itself. Of course, when your guiding light is a 16 year old child-activist, it's easy to say silly things, eh?
            • No, the pay will not drop.

              Why would the price for a Ferrari drop just because Tada has a new model that is sold in 100 millions per year?

              • Your equivalency is false; this is more like Ferrari, Lamborghini, and Porsche saturating the performance market with $80K sports cars. That will keep down the price of $200K Ferraris, as people will get 80% of the performance for 40% of the price.

                Same for Tesla - model S sales fell when the model Y came out - because a cheaper, less capable version came out. Yes, it is ~75% of the performance and size of a model S, but it's 50% of the price - so it sells more.

                Likewise with labor - if I can hire 3 semi-OK

                • Likewise with labor - if I can hire 3 semi-OK programmers or one great one, and get effectively the results of 1.2 great programmers, and save money - I'll take it.
                  Good, the you will be soon out of business as you obviously know nothing about programming.

            • by gweihir ( 88907 )

              If you have millions of coders that cannot do anything a bit more complicated, then the price of competent coders will not drop.

    • Also if they were going to teach a programming language, Swift is an awful choice. Use Scratch for the younger kids and Python for a more serious course aimed at people who might want to take a college programming course. That's no knock against the language, just that you won't get much out of it if you're not going to do iDevice development whereas a little bit of Python is useful for all kinds of people.
      • by 605dave ( 722736 )

        So do those language have something like Swift Playgrounds specifically designed for teaching coding? And why is Swift an awful choice? It is easy to read, that seems good for beginners. It is open source, so check that box. And in the announcement for Swift 6 they emphasize bringing it to other platforms.

        I don't disagree that Python would be a good choice, I am just saying don't dismiss Swift so quickly.

        • by Pascoea ( 968200 )
          Can you write/compile it without a Mac? Can you test/use it without an iDevice? (Honestly asking, I'm not an app developer.) If either of those answers is "No", or "Yes, but it's hack-ey" than there are many better options to teach a kid how to write code.
          • by Dog-Cow ( 21281 )

            Swift runs on Linux with first-party (Apple) support, and on Windows with third-party support. it can be compiled for ARM (Android) and WASM (works-in-progress).

    • Kids are graduating barely able to read and write or do basic arithmetic. Let's teach them to program surely that will fix everything.

      You could use this same argument against teaching anything beyond basic math and reading.

      Not every kid needs to be held back at the pace of the slowest.

    • It most certainly will improve reading, writing and math.

      Or do you think with Swift you just project your mind into a laptop?

    • by Pascoea ( 968200 )

      I, as someone who has made a successful career (so far, anyway) in part because of my skills as a developer, would never have got into the field if it wasn't for multiple required developer classes. I went to school for an Electronics degree (not quite a EE) that ended up requiring 3 different dev courses. C++, VB, and Java. I absolutely detested my C++ class, and when I was done I swore I'd never write another line of code in my life. I transferred schools, and my C++ class didn't meet their qualificat

  • If this happens, these West Virginia kids will apply for a job at my company and take my job writing Swift programs. HOW CAN THIS BE STOPPED?

  • by Narrowband ( 2602733 ) on Tuesday March 10, 2020 @09:48PM (#59816794)
    Because every kid needs to know how to code Worldwide Interbank Financial Telecommunications.
  • by registrations_suck ( 1075251 ) on Tuesday March 10, 2020 @09:52PM (#59816800)

    Why do they need these teachers, who are not developers, as middlemen?

    Just turn the kids in to the appropriate online resources and get the fuck out of the way.

    • by gweihir ( 88907 )

      Why do they need these teachers, who are not developers, as middlemen?

      Just turn the kids in to the appropriate online resources and get the fuck out of the way.

      Well, yes. If you actually wanted those with the aptitude and interest to learn. But I am beginning to suspect that most public figures pushing for this "teach everybody to code" somehow know that this does not work. Hence with your approach, it may become obvious to the general public very fast that coding is a specialist engineering discipline and that most people have no business doing it (except for simple hobbyist stuff). Hence they cannot recommend that approach, because it would become clear they ar

      • But I am beginning to suspect that most public figures pushing for this "teach everybody to code" somehow know that this does not work.

        Your suspicion is a good sign; you're standing outside the door to understanding, and you can hear that something is going on in there. Will you take the next step, and figure out why you were so grossly mistaken? No, of course not, you're an incorruptible ignoramus. But you have a chance to learn something basic here, if you want.

        Your mistake is in your basic presumptions about why having everybody take beginning classes on advanced topics is useful. Instead of listening to the educators talk about why lib

    • Re:Internet much? (Score:4, Insightful)

      by thegarbz ( 1787294 ) on Wednesday March 11, 2020 @05:05AM (#59817374)

      Why do they need these teachers, who are not developers, as middlemen?

      Because teaching people is a completely different skill than actually being able to do the thing being taught. Developers on the whole make for absolutely horrible teachers, most engineers across most disciplines actually do.

      Just turn the kids in to the appropriate online resources and get the fuck out of the way.

      Because online study isn't suited to everyone. Self study even if not online isn't for everyone either. Classrooms still have a place.

    • by AmiMoJo ( 196126 )

      Have you ever tried to teach kids anything? There are some very specific skills you need to manage a class of 20 children and get them to engage with a learning task.

      Children learn in different ways too. Some will just get on with it if you give them a book or website, but with most you will need to guide them a little.

  • by oldgraybeard ( 2939809 ) on Tuesday March 10, 2020 @10:00PM (#59816812)
    is not a walled garden. It is a overly complex locked industrial vault in the basement no one has access to.

    And I say that, after selling and delivering an iOS app, so I have been through the process end to end to develop an in-house app for a companies iPads.

    Heck updating iOS to the latest 13.3.1 broke the deployed apps view controller paging (full screen/partial screen) and CoreData. Fun fun when you have deployed devices scattered across the US.

    Just my 2 cents ;)
  • Earlier I was deriding people who like Python only because that was the first language they learned, but Python is an order of magnitude better language to learn programming with over Swift.

    Swift was built on Objective-C, which had all the baggage of C, and Swift thus ended up having the baggage of both languages. There are weird things that happen, and you need a lot of context to understand why.

    Learning Swift as a first language will make kids want to run away from programming and never come back. Ev
    • "Learning Swift as a first language will make kids want to run away from programming and never come back. Even Javascript would be a better language to learn than Swift." So true doing things the Swift way it is a lot to wade through.

      OS X, iOS, Xcode and Swift is a fast moving target environment. One needs to be careful and you will still have apps break badly on the numerious OS X, XCode, iOS, Swift update cycles.

      Just my 2 cents ;)
      • And I forgot to mention the numerous and continuous changes in the Apple Enterprise Development Program,DEP,(defunct I think) program, VPP Program, Apple Developer Program, Apple Push Cert authorizations, Team Profiling, Device Authorizations and Application Code Signing process that seems to change between coding sessions in the various parts of the development environment.

        Just my 2 cents ;)
        • It seems highly unlikely that students will be asked to join the Apple Developer Program, or cryptographically sign their homework.

    • by gweihir ( 88907 )

      Well, I like Python and it was probably language number 20 or so I learned. It is completely unsuitable for beginners though, unless limited to a small sub-set.

      • What language do you think is best for beginners don't say Javascript?
        • What language do you think is best for beginners don't say Javascript?

          For total beginners? Scratch [mit.edu].

          Scratch is drag and drop. It is a very gentle introduction to basic programming concepts. You can't get a syntax error. Your program may not do what you want, but it always does something.

          Another advantage of Scratch is that it is so totally lame and limited, that no one gets "first language syndrome". Once students "get it" they are happy to move on to something more capable.

        • by tsa ( 15680 )

          Their home language.

        • Machine code. Maybe assembly language if they're not leet enough.

        • Actually old school Pascal, or even old school BASIC with line numbers, depending what you think is the appropriated "abstraction level":

          In my opinion Pascal is the best language for teaching. Very clear concepts of const, type, var, function, procedure, main section of a program and how to write and use a library, and actually excellent input/output for simple programs for files.

          However I disagree with some posters who think Python is a bad choice ... on the other hand, I don't think kids below roughly 14

          • by gweihir ( 88907 )

            I did not say Python was a bad choice in principle. Just that the whole language is a bad choice. A carefully selected sub-set can certainly be taught to beginners.

          • Turbo Pascal was taught in my first year of C.S., data structures, etc.
        • by gweihir ( 88907 )

          Depends very much on the target application domain.

    • Swift is not based on C or Objective-C

      Is it more a mixed beast between Java and Dart, pretty close to Dart actually. It has no baggage at all.

      Learning Swift as a first language will make kids want to run away from programming and never come back.
      Did you actually ever look at a Swift manual, or did one hack your account?

    • Their claim that it's the first language not too geeky to teach to beginners is especially laughable. LOGO, anyone? If the goal is to teach you a language that's useful, Swift isn't it. If the goal is to teach programming concepts, LOGO is still a good choice. It lets the user do stuff IMMEDIATELY.

    • Learning Swift as a first language will make kids want to run away from programming and never come back. Even Javascript would be a better language to learn than Swift.

      If they were talking about classes for aspiring programmers who are being trained to implement projects from a specification, this comment would have more value.

      But as is, they're just going to be typing in programs, and making very small changes to specific parts. Most of the details will never be explained, and baggage from C will be carefully avoided and treated as boilerplate. They might even end up with fill-in-the-blank style IDEs.

      Think learning BASIC in middle school on an Apple ][. Now replace that

  • by theodp ( 442580 ) on Tuesday March 10, 2020 @10:29PM (#59816870)

    Like the App Store [apple.com], 'Everyone Can Code' students earn only 70% of the grades given by teachers and Apple collects the other 30%.

  • by bug_hunter ( 32923 ) on Tuesday March 10, 2020 @10:31PM (#59816878)

    I love Swift, if your code compiles, more often than not it works first time as it's so heavily typed and well structured (even more so than other typed languages I've dealt with).

    That said, there are some pretty advanced concepts that might seem excessive to non-developers - the biggest example is generics have somewhat weird behaviour when it comes to protocols, and then you often have to make some type-erasure protocol to make everything happy.

    As much as I feel that JavaScript and Python are scripting languages that have been used for stuff waaay bigger than they can/should handle, they seem like better choices for getting started.

    Has anybody ever tried the learn to code in Swift apps? How was your experience?

    • Re: (Score:2, Insightful)

      by fred6666 ( 4718031 )

      Being effectively an Apple-only language, it seems it's pretty much one of the worst language to start with.

      • The first programming course I took in high school, we used some 1960s-era programmable calculators fed instructions by punch cards. The "language" they used turned out to be very similar to the RPN used on HP calculators, which in turn is very similar to assembly language (registers and operations on the contents of the registers, loops were accomplished with conditional jumps). In college my CS intro course used Pascal, with the advanced courses using Ada because that was the language the DoD had decide
    • by AmiMoJo ( 196126 )

      I do wonder if very strict languages like Swift are the way to teach coding. At university they started everyone off with Ada, and it was a bit of a disaster. Students got bogged down with the syntax and with trying to understand why you couldn't do things. It being OO was an issue too because it forced students to learn some of the OO stuff just to get basic programs working, rather than focusing on the basics of software like flow control.

      I started with BASIC, which as we all know is notorious for encoura

      • by AHuxley ( 892839 )
        The best students did fine with Ada, just as others did fine with Pascal, C, Basic.. just as past smart people did fine with COBOL.
        Its not the "languages"... its the IQ of the student, the ability at school, university.
        • by AmiMoJo ( 196126 )

          Some students do fine if you just give them the complete works of Shakespeare, but that doesn't mean it's generally a good teaching method.

      • Ahh I learned Java and Ada in university (with a bonus bit of C, and dear god COBOL - I'm not even that old, but the database lecturer was).

        I must say, I really didn't get Ada at the time, and pretty much just as the course wrapped up it suddenly clicked and all made amazing sense.

        I also found our lecturers forced best practise stuff on us for extremely trivial projects - we'd have to write a few pages of pseudo-code to plan out a two function sized program. The end result was that I hated these best practi

  • by RitchCraft ( 6454710 ) on Tuesday March 10, 2020 @10:37PM (#59816884)
    I taught high school computer science courses from 2000 to 2018 (A+, CCNA, Network+, Programming) and I'm here to tell you folks only about 5% of kids find programming remotely interesting. Of that 5% maybe half of those actually had the mindset to be programmers. Over the years I taught PHP, various scripting languages, Python, and Visual Basic all with an emphasis on game programming to keep it fun. Forcing programming on kids IS NOT the answer. The students I had chose my class because they already had an interest in CS and I still saw these low numbers. Imagine trying to teach Swift to students with no interest in CS at all. Do you want better math scores? Teach math better. Better science scores, again, better science classes. CS classes in Swift programming are not going to improve scores in those areas.
    • by NicknameUnavailable ( 4134147 ) on Tuesday March 10, 2020 @10:52PM (#59816912)
      They want reduced cost of programming labor, there's nothing else going on with these "teach kids to code" programs. They can't stand the fact people who are capable of programming are so scarce they make executive pay scales for even mid-tier abilities. Especially so since the upper class have long held the belief that their "class" was what made them special, when in fact any halfwit could do their job with their resources out the gate and the only thing which really makes people special in any manner is intellect, which they have in no greater proportion as a population than the average sample of plebs. This is about class warfare, the same as everything else Tim Cook, Bill Gates, and the rest have ever tried to push.
      • by gweihir ( 88907 )

        Well, probably. But the whole thing is about as stupid as trying to turn average people into mathematicians, novelists, high-end chefs, etc. It does not work and cannot work.

    • by gweihir ( 88907 )

      Pretty much anybody that has ever really taught coding knows that. It seems this stupid idea is now self-perpetuating though.

    • by Ronin Developer ( 67677 ) on Tuesday March 10, 2020 @11:24PM (#59816978)

      We are talking about West Virginia - a poor state with a large coal mining industry.
      These people are going to lose their jobs as the world goes more green. And, these people need to know their is a light at the end of the tunnel.

      Originally, the hope was that the solar industry was that path. That didn’t work out. But, if they can be shown that there are other things thing can do, it might be a watershed event.

      I agree that most wont pursue programming as a career. They will, however, learn skills that can carry them forward. Most importantly, they will learn how to think. That brings hope.

      Well,that’s the plan I do believe.

      • I'll give a tl;dr since this is going to get a bit ranty. Teaching kids to code? Yes, sure, great idea, it increases exposure and you might find those rare savants who may never have been exposed otherwise. Telling miners to just "learn to code" if they lose their jobs? No, fuck off.

        TFA is about teaching kids to code and I don't think that's a bad idea. Becoming a good developer requires two inherent features and one learned: passion for the subject, the right mental faculties to comprehend the fundament
        • This isn't about teaching "coal miners". It's about teaching kids skills for the 21st century that can take them beyond being relegated to being coal miners and think outside the box (or mine).

          There are, very likely, intelligent kids in schools in mining towns that simply aren't getting a solid education and the skills to earn a decent wage/salary without having to set foot in a mine. They just aren't being given the chance to be discovered.

          Coal mining is a time-honored profession, don't get me wrong. Ou

    • and I'm here to tell you folks only about 5% of kids find programming remotely interesting

      What proportion found maths interesting? Or physics, or history? Or geography? Or French? etc.

    • I'm here to tell you folks only about 5% of kids find programming remotely interesting

      I think a large number of people find programming interesting right until they reaslise how much effort needs to be put into making something basic. Put a kid in front a computer programming course and ask them what it is they want to achieve and they'll most likely come back with creating bloody world of warcraft. The sad reality is after several months they'll be lucky to spit out a game of tic tac toe.

  • from the /. summary

    "the Apple "Everyone Can Code" curriculum.."

    Not everyone can code. Many people are too stupid.

    • by RitchCraft ( 6454710 ) on Tuesday March 10, 2020 @11:05PM (#59816932)
      It's not that people are "too stupid". It takes a very organized and focused mind to become proficient at coding. I found (I was a CS teacher) that students with a tendency toward autism (especially Asperger's) and those labeled as ADHD were often better suited to the task. The other problem is that people think programming can just be done "out of the blue" so to speak. You need to have an understanding of how a computer works at the core level (the electronics) to a certain degree to understand what the code you are writing is actually doing.
      • It's not that people are "too stupid". It takes a very organized and focused mind to become proficient at coding.

        We have a word to describe people with unfocused and disorganized minds: stupid.

      • Nor does being "proficient at coding" make one a programmer. Just because one knows how to flip a switch to turn on the lights does not mean that one has any understanding of the processes involved.

      • You need to have an understanding of how a computer works at the core level (the electronics) to a certain degree to understand what the code you are writing is actually doing.
        Nope, except for assembly such nonsense is not required.

        And real processors like ARMs have already a quite high level assembly language. So you do not need such nonsense you think people do need.

        I write mostly Java, Groovy, Scala ... my programs run on ARM, SPARC, Intel ... and all those machines work different in important ways. And

      • to a certain degree to understand what the code you are writing is actually doing.

        No you don't. This is just some BS gatekeeping.

        To understand why C uses 0 based indexing and what the actual array index does in memory, sure. But you don't need to know C, or any of that, to write some scripts to find faces in pictures.

  • by AxisOfPleasure ( 5902864 ) on Wednesday March 11, 2020 @12:45AM (#59817108)

    For the millionth time, not everyone is a coder. We teach home econmics and "woodshop" in schools, I still can't cook that well and I'm certainly no carpenter! I took up a career in computers 'cos I love working with them, I love new tech and playing with new bits of software. I have a friend who took up electronics career, another who took up bioscience and another who's a professional musician.

    Sure offer coding as a choice but do it at the higher levels in school, soon as you take up your last few years in high school then offer coding to those who really want to take up tech subjects. I don't need to know how my heating system works, people out there love plumbing and their damn good at it ( my Dad for one, who's also a good carpenter! ) I'm not and I leave it to the pro's. Going forward most people simply want to use a device and they really don't care how it works inside, so long as it just works.

    You don't have to be a coder to be tech literate, ramming coding down kids throats will simply bore those who hate it.

    • We teach home econmics and "woodshop" in schools, I still can't cook that well and I'm certainly no carpenter!

      I hope what you got out of both of those experiences is to get other people to cook and build things for you. The point of learning to code classes is not exclusively to teach people to code. It would be nice if many people could just come out the other side with a grasp of basic logic, iteration, problem solving, and above all the knowledge of when to seek help.

      There's a lot you can learn from programming that isn't covered in other life courses. Just like you probably learnt in home economics not to attem

    • The thing about coding is that most office workers are wasting tons of productivity by NOT doing it. I recently received an Excel workbook from someone who was responsible for regulatory reporting for my employer. Depending on your point of view, it was either a huge mess or an amazing accomplishment. Some of the formulas were so large that I had to paste the text into a vi-like editor and use "pretty print" to get any idea of what it was doing.

      When I had everything sorted, I realized that I could genera

    • But it should be taught at school so the kids who are good coders get exposed. Hardly anybody uses calculus in adult life but we teach it to kids.
  • Tim Cook is a Self serving douche bag. Wanting more kids to know Swift is just a way to get cheeper programmers. The point of learning other HUMAN languages is to connect with other HUMANS from other countries and cultures. Programming is more of a Math discipline. Learning geometric proofs helps with programming logic. Study programming in Math class. Maybe study UI design in Art class. Learning Swift does NOT help you to understand humans from other cultures.
  • $SCHOOL_WITH_MONEY_TO BURN_STR taps $BIG_NAME_CORP_STR to teach kids $BIG_NAME_CORP_ESOTERIC_NEW_LANG_STR

    What wrong with a bit propositional logic dashed with some set theory and a garnish with C?

    Heck use repl.it call it the day.

  • "We fundamentally believe that coding is a language and that just like other languages are required in school, coding should be required in school." I like Apple as a company (generally), I don't have an opinion in general about Tim Cook, but this statement is a failure of basic reasoning.

    Natural languages are used by humans to communicate. Every human (even those with sub-par intelligence) is capable of learning at least one natural language practically painlessly and without conscious study. Most can l

Waste not, get your budget cut next year.

Working...