Become a fan of Slashdot on Facebook

 



Forgot your password?
typodupeerror
Python AI Education

New Code.org Curriculum Aims To Make Schoolkids Python-Literate and AI-Ready 40

Longtime Slashdot reader theodp writes: The old Code.org curriculum page for middle and high school students has been changed to include a new Python Lab in the tech-backed nonprofit's K-12 offerings. Elsewhere on the site, a Computer Science and AI Foundations curriculum is described that includes units on 'Foundations of AI Programming [in Python]' and 'Insights from Data and AI [aka Data Science].' A more-detailed AI Foundations Syllabus 25-26 document promises a second semester of material is coming soon: "This semester offers an innovative approach to teaching programming by integrating learning with and about artificial intelligence (AI). Using Python as the primary language, students build foundational programming skills while leveraging AI tools to enhance computational thinking and problem-solving. The curriculum also introduces students to the basics of creating AI-powered programs, exploring machine learning, and applying data science principles."

Newly-posted videos on Code.org's YouTube channel appear to be intended to support the new Python-based CS & AI course. "Python is extremely versatile," explains a Walmart data scientist to open the video for Data Science: Using Python. "So, first of all, Python is one of the very few languages that can handle numbers very, very well." A researcher at the Univ. of Washington's Institute for Health Metrics and Evaluation (IHME) adds, "Python is the gold standard and what people expect data scientists to know [...] Key to us being able to handle really big data sets is our use of Python and cluster computing." Adding to the Python love, an IHME data analyst explains, "Python is a great choice for large databases because there's a lot of support for Python libraries."

Code.org is currently recruiting teachers to attend its CS and AI Foundations Professional Learning program this summer, which is being taught by Code.org's national network of university and nonprofit regional partners (teachers who signup have a chance to win $250 in DonorsChoose credits for their classrooms). A flyer for a five-day Michigan Professional Development program to prepare teachers for a pilot of the Code.org CS & A course touts the new curriculum as "an alternative to the AP [Computer Science] pathway" (teachers are offered scholarships covering registration, lodging, meals, and workshop materials).

Interestingly, Code.org's embrace of Python and Data Science comes as the nonprofit changes its mission to 'make CS and AI a core part of K-12 education' and launches a new national campaign with tech leaders to make CS and AI a graduation requirement. Prior to AI changing the education conversation, Code.org in 2021 boasted that it had lined up a consortium of tech giants, politicians, and educators to push its new $15 million Amazon-bankrolled Java AP CS A curriculum into K-12 classrooms. Just three years later, however, Amazon CEO Andy Jassy was boasting to investors that Amazon had turned to AI to automatically do Java coding that he claimed would have otherwise taken human coders 4,500 developer-years to complete.

New Code.org Curriculum Aims To Make Schoolkids Python-Literate and AI-Ready

Comments Filter:
  • AI is all about stealing IP and copyrighted information from hard-working people--to make a select few billionaires. There is nothing wrong with "AI" as a computer science, but as deployed, AI has indeed been harmful to society by in large.
  • by dfghjk ( 711126 ) on Tuesday June 10, 2025 @09:31AM (#65439907)

    "... first of all, Python is one of the very few languages that can handle numbers very, very well."

    This is false. Python has 3rd party libraries that handle numbers well. Those libraries are not Python and learning Python does not mean learning those libraries.

    "Python is a great choice for large databases because there's a lot of support for Python libraries."

    They aren't Python libraries, they are libraries that support Python. And they make Python a good choice for accessing large datasets, not large databases. Yes, these are complaints over sloppy language, but if this "Walmart data scientist" cannot get language right, why are we interested in his comments regarding educating of children? It seems to me this guy is just a layman.

    • by ShanghaiBill ( 739463 ) on Tuesday June 10, 2025 @10:21AM (#65439977)

      This is false. Python has 3rd party libraries that handle numbers well. Those libraries are not Python

      Python has built-in support for arbitrary precision integers by default, with no 3rd party libraries needed.

      In Python, you can precisely calculate 100 factorial with a default installation. You can't do that with C++, Java, or Rust.

      • by azouhr ( 8526607 )

        Python has built-in support for arbitrary precision integers by default, with no 3rd party libraries needed.

        In Python, you can precisely calculate 100 factorial with a default installation. You can't do that with C++, Java, or Rust.

        I can do that with my 1989 HP48SX . For arbitrary precision I have to use an additional library though.

      • We can all do that with DC [wikipedia.org].

        Only 39kB too.

      • In Python, you can precisely calculate 100 factorial with a default installation. You can't do that with C++, Java, or Rust.

        Sure, in just before the heat death of the universe.

        In Python, you can precisely calculate 100 factorial with a default installation. You can't do that with C++, Java, or Rust.

        Well, no, but you can in Javascript (with floating point support, unlike Python). Does that mean Javascript is one of the few languages that can handle numbers "very, very" well?

        In C++, or Rust, you use a library that does overloading, and you operate with the numbers as if they were native, at somewhere around a metric bazillion times faster than Python.

        • Sure, in just before the heat death of the universe.
          One multiplication per second would be 100 seconds.

          Well, no, but you can in Javascript (with floating point support, unlike Python).
          No, you can't. As a float/double is not "precise".
          It does not even fit into a double: 9.332622e+157!

          In C++, or Rust, you use a library that does overloading, and you operate with the numbers as if they were native, at somewhere around a metric bazillion times faster than Python.
          Which part of "you can do it directly in Python"

          • One multiplication per second would be 100 seconds.

            You Germans are far too literal.

            No, you can't. As a float/double is not "precise". It does not even fit into a double: 9.332622e+157!

            Well shit- I actually thought JS had arbitrary precision arithmetic. Scratch that entire claim, then.

            Which part of "you can do it directly in Python" is beyond your understanding? Aka: you do not need to google a library, download it and put it into your program?

            Beyond my understanding? See my first statement: It's fucking slow, and Python is a fucking terrible language.
            It's not a matter of can, it's a matter of "why the fuck would you?"

            And no: it is not a "metric bazillion" faster than Python.

            LOL.
            You do know that Python is interpreted, right?
            For basic math, C++ is ~10,000% faster than Python.
            That's not a metric bazillion- but then again, we've established that you damn Germans are way t

    • by gweihir ( 88907 )

      Well, Python has built-in seamless long number support. That comes with some problems, but for some things it is extremely convenient. Mostly, it is irrelevant though and it certainly is not the only type of "number". Fully agree on the DB comment though.

    • Your comment reeks of insecurity. NumPy exists precisely because Guido van Rossum—Python’s BDFL—understood over 30 years ago that extensibility was the future of programming. The same way Bjarne Stroustrup built C++ by extending the brilliance of Kernighan and Ritchie’s C, Python's power comes from being a foundation for libraries like NumPy, pandas, and TensorFlow. Your issue isn’t with a data scientist’s wording—it's with your own inability to handle a world that

      • While I agree with most of your points.

        Suggesting otherwise is like claiming you can teach JavaScript while ignoring the DOM or Node.js.
        You certainly can.
        And you should.

        DOM or Node.js or anything else: are for the next classes. Not for "JavaScript, the language".

      • I'll not opine on whether or not Python, like Java, is a gigantic pile of shit or not, I will only say the following:

        Applications written in Python run like your machine are 6 generations behind where they're really at.
        Only containers and applications written in Java and Python take 10 fucking minutes to start.
        Python is a net negative. It didn't enable shit- all that work would have been done in better languages.
  • Sure! (Score:4, Interesting)

    by jenningsthecat ( 1525947 ) on Tuesday June 10, 2025 @09:43AM (#65439925)

    The robber barons are doing a truly great job of both improving the lives of all citizens and tackling fighting global warming. So let's hand them the keys to the classrooms as well, because it's not as though they have a vested interest in an over-supply of cheap labour for the code mines they salivate over.

  • a smart move (Score:5, Insightful)

    by ZipNada ( 10152669 ) on Tuesday June 10, 2025 @10:29AM (#65439993)

    Python is the go-to for data science these days, largely due to the very powerful analysis and visualization packages that are easy to install. The packages are frequently complex and tedious to learn though. Modern AI's will be familiar with the API's which is super helpful, you can often just outline a series of step-by-step objectives and get good results. Give students a big hunk of dirty data and a list of tasks to perform with it along with AI assistance and they can cover a lot of ground. Like it or not, this is the workflow of the future.

    https://www.stxnext.com/blog/m... [stxnext.com]
    "There are around 137,000 Python libraries for data science available at the moment."

    • by PPH ( 736903 )

      There are around 137,000 Python libraries for data science available at the moment.

      Not a really great metric. There are 250,000 libraries in CPAN. So lets all switch to Perl. Some are good, some are garbage. I suspect that the same is true for Python.

      When I was using Perl extensively, the community around it was pretty mature. So the garbage was pretty well known. The answer, IMO, was not to throw it all out and start with a new language and resources.

      • Indeed. Python was invented for people who couldn't figure out perl because they are confused by parentheses and semicolons, and represents a massive duplication of effort. What a massive waste.

        • Care to show us a function definition in Python?
          And now one in Perl?

          Why do the Python function arguments have names, and the Perl function seems to have no arguments at all?

          Care to explain in 3 sentences why accessing a value in a hash table in Perl is done with $ and not with @???

          Why does Perl use $ and @ when Python obviously does not need this magic?

          Oh, wait ... did I mix up @ with % again?

          Gosh ...

          • > Care to show us a function definition in Python?
            > And now one in Perl?

            Why? They're easy enough to find, without the cherry picking involved in someone making one up here. But here's a perl function straight from the perl docs:

            sub foo ($left, $right) {
            return $left + $right;
            }

            Of course this is also a perl function:

            sub foo {
            return $_[0] + $_[1];
            }

            > Why do the Python function arguments have names, and the Perl function seems to have no arguments at all?

            Becaus

            • by PPH ( 736903 )

              while perl functions use implicit positional parameters or named parameters depending on developer choice.

              Which is why Perl had to go. Some developers can't be given choices. In much the same way some chimpanzees can't be handed loaded guns.

              Just as Harrison Bergeron can't be allowed to work to the level of his own abilities, we all must use Python. And drive cars with automatic transmissions.

      • Not for data science ...

        And obviously you can use every Python ready library from C or Java or Perl as well ... and so on. It is a fucking library, you link it into what ever main code base you want.

      • So lets all switch to Perl.

        Back when shit worked, and it didn't take a script that normally produces 12 lines of output 27 seconds to produce an unreadable stack trace.
        Some of us never left ;)

        Some are good, some are garbage. I suspect that the same is true for Python.

        Definitely. But even a good Python library is encumbered by being tacked to that fucking terrible language.

    • Python is the go-to for data science these days [...] like it or not, this is the workflow of the future.

      Which future? The one half an hour from now when trying to run the Python code will fail with a spam of tracebacks because some core function of the language changed?

      Python might be a great language for some quick-and-dirty project right now, where you just want to get the output and don't care whether it still runs next week. I do a lot of stuff with gnuRadio, trying to use python code that might be a year or three old, and end up having to either rewrite half of it or make use of one of the frameworks t

      • >> Doesn't really feel like the future

        I never have problems like you describe, but then all the code I have is relatively freshly written. The language did undergo a big change from version 2 to 3 years ago. But that was in the past, not the future.

  • Python was created in 1991 to solve the problem of having a multitude of Unix shells, a "developer only" shell (MPW for Macintosh), and MS-DOS 3 (eventually MS-DOS 5).
    In addition, there were inconsistencies with the related system utilities. But that's not longer a big problem in 2025.

    Let's compare the size of Busybox to Python (pre-install sizes, post install size is left as an exercise to the reader).

    Busybox
    busybox-1_37_0.tar 2.5 MB

    Python
    Gzipped source tarball 28.0 MB
    XZ compressed source tarball 2

  • Getting a basic understanding of how code works is good
    Talent is real. It takes a special kind of mind to be good at software development and not all can do it. Add to that the rise of AI, and the path to riches in software development is not clear or easy, and few will make it

  • So, functionally illiterate.
  • ...those kids get that A1 education!

The number of arguments is unimportant unless some of them are correct. -- Ralph Hartley

Working...