Become a fan of Slashdot on Facebook

 



Forgot your password?
typodupeerror
×
Programming Education Math Stats

Computational Thinking: AP Computer Science Vs AP Statistics? 155

theodp writes: "What if learning to code weren't actually the most important thing?" asks Mother Jones' Tasneem Raja. "Rather than increasing the number of kids who can crank out thousands of lines of JavaScript, we first need to boost the number who understand what code can do." Computational thinking, Raja explains, is what really matters. So, while Google is spending another $50 million (on top of an earlier $40 million) and pulling out all the stops in an effort to convince girls that code and AP Computer Science is a big deal, could AP Statistics actually be a better way to teach computational thinking to college credit-seeking high school students? Not only did AP Statistics enrollment surge as AP CS flat-lined, it was embraced equally by girls and boys. Statistics also offers plenty of coding opportunities to boot. And it teaches one how to correctly analyze AP CS enrollment data!
This discussion has been archived. No new comments can be posted.

Computational Thinking: AP Computer Science Vs AP Statistics?

Comments Filter:
  • Statistics is indeed quite important, and whether AP CS or AP Statistics is a more useful use of a high-school student's time is a useful question (assuming they have to choose, which maybe they don't?). But AP Statistics is not teaching computational thinking; it's teaching statistical thinking, which is not the same!

    Computational thinking, or to use an older term, procedural literacy, is the idea that people should understand how to think in terms of processes, procedures, etc. Rather than teaching programming, which often (especially at introductory levels) focuses a lot on the mechanics of a programming language's syntax and other idiosyncracies, the idea is to teach people how to even think about the basic idea of a machine that can execute programs. Many people can't do that: even leaving aside that they don't know C or Java or Lisp, they also don't really understand what an algorithm or a computer program is conceptually, and have absolute no idea what kinds of things can be computed and what kinds can't, or which are easy or harder to compute. They lack the ability to interact meaningfully with non-code representations of computation and algorithms as well, like flow charts or (natural-language) instruction sequences.

    Statistical thinking is quite a bit different, more about proper use of data, quantification of evidence and uncertainty, etc. It can be complementary to computational thinking, but it isn't the same skill.

    • by Registered Coward v2 ( 447531 ) on Sunday June 22, 2014 @08:20AM (#47292695)

      Statistics is indeed quite important, and whether AP CS or AP Statistics is a more useful use of a high-school student's time is a useful question (assuming they have to choose, which maybe they don't?). But AP Statistics is not teaching computational thinking; it's teaching statistical thinking, which is not the same!

      While I agree statistical think is different than computational thinking, to answer your question I think it is a better use of a students time to teach statistics. Properly taught, it teaches you to think about how to formulate a question, what data you need and how to analyze it. In short, it is as much about the problem as the answer.

      Computational thinking, or to use an older term, procedural literacy, is the idea that people should understand how to think in terms of processes, procedures, etc..

      SNIP

      Many people can't do that: even leaving aside that they don't know C or Java or Lisp, they also don't really understand what an algorithm or a computer program is conceptually, and have absolute no idea what kinds of things can be computed and what kinds can't, or which are easy or harder to compute. They lack the ability to interact meaningfully with non-code representations of computation and algorithms as well, like flow charts or (natural-language) instruction sequences.

      Again, I concur with you comments. That's why code monkeys are cheap and those who can actually develop a solution valuable; and the skills you mention don't become obsolete when a new language comes along. Unfortunately, far to many people equate the ability to code with being a computer scientist or engineer. That's not to say we don't need good coders but focusing on coding and forgetting the how and why behind it is doing them a disservice. I've also found the ones who can really write elegant code generally also think conceptually as well. Maybe I was lucky but when I took CS in high school the teacher made us explain and diagram what we are trying to do before coding, and rewarded accomplishing tasks in as few lines of code as possible. A she put it, "anybody can write a program with 100 lines to accomplish what can be done in 2."

      Statistical thinking is quite a bit different, more about proper use of data, quantification of evidence and uncertainty, etc. It can be complementary to computational thinking, but it isn't the same skill.

      True, but faced with learning statical thinking or how to write code I think the former is more valuable.

    • by langelgjm ( 860756 ) on Sunday June 22, 2014 @08:40AM (#47292757) Journal

      It's not really a new debate, but the assumption that high school students will on average be better served by taking calculus instead of statistics could use some scrutiny.

      Practically speaking, basic familiarity with statistics is also a form of civics - teaching kids when to call BS on bogus claims, helping them to understand what statistical significance means and doesn't mean, etc.

      • by ShanghaiBill ( 739463 ) on Sunday June 22, 2014 @09:39AM (#47292983)

        It's not really a new debate, but the assumption that high school students will on average be better served by taking calculus instead of statistics could use some scrutiny.

        Students should learn calculus, but it could be compressed, and maybe even merged with physics. My class spent a lot of time learning how to do things like integrate the square root of the reciprocal of the co-secant. That is not useful. Students already get quite a bit of exposure to statistics and probability in math classes, although there is usually not a class solely focused on that topic.

        Practically speaking, basic familiarity with statistics is also a form of civics - teaching kids when to call BS on bogus claims

        Indeed. I have long felt that we should be teaching "bullshit math" where rather than getting a problem and finding a solution, the students are presented with a political advocacy statement, and tasked with identifying the logical and mathematical flaws, unstated assumptions, and missing information. This sort of critical thinking skill, along with learning basic economics, could lead to a better functioning democracy.

        • by Shoten ( 260439 )

          Practically speaking, basic familiarity with statistics is also a form of civics - teaching kids when to call BS on bogus claims

          Indeed. I have long felt that we should be teaching "bullshit math" where rather than getting a problem and finding a solution, the students are presented with a political advocacy statement, and tasked with identifying the logical and mathematical flaws, unstated assumptions, and missing information. This sort of critical thinking skill, along with learning basic economics, could lead to a better functioning democracy.

          The "bullshit math" you refer to is known as Symbolic Logic. [philosophy-index.com] It provides a mechanism for reducing statements and concepts into operands, effectively...and by doing so you can more easily detect things like non-sequiturs, circular logic, self-contradiction, empty statements with no real meaning and the "post hoc ergo propter hoc" bullshit that is the basis of many knee-jerk legislative actions. The real beauty is that by sticking to the symbolic operands of a statement rather than the contextual content, y

        • by TheLink ( 130905 )
          Yeah. Teaching people to detect bullshit and think scientifically would be good.

          As for getting a problem and finding a solution, it's still good to teach students to think and solve problems, rather than be an inferior "Google" and regurgitate memorized solutions or follow very specific memorized processes. Because I actually know adults who can't do basic problem solving- say there's a problem with something, their default is getting stuck. They don't go - it could be caused by A, B, C, D and perhaps other
      • I took trigonometry, calculus, and (later) differential equations and vector calculus. Integrating sin(2x) did not contribute enough to by education to be worth the effort.

        As a computer programmer, I need discrete math for my job. (The only computer people I know using continuous math for their day jobs are in HPC /scientific computing). As a citizen, voter, and member of society, I need probability, statistics, and a good understanding of logical fallacies.

        I'm just another jerk with an opinion, but I'd dro

        • Perhaps learning calculus is about learning to think in abstract and increasingly difficult (although mathematically provable and correct) realms of intangible worlds.

          And software engineering is nothing, if not that.

          • Math classes (my minor) and Software Engineering (my profession) have little of the same flavor at all. Math classes feel closer, perhaps, to Physics (my other degree), but even still, it isn't the same. Applied math is incredibly useful. Abstract math isn't useful, and those involved are unabashed proud of the fact. Very sad for Mathematics. The idea of teaching applied math (science and engineering based,) is a great idea that won't fly, due to the culture of mathematical academics. If you want to r
            • Abstract math isn't useful, and those involved are unabashed proud of the fact.

              Yeah, that's what the number theory weenies thought, until Diffie and Helman went and invented their key exchange.

              • Number Theory has application today, oh yes. Hellman (two 'l's, not one) had a BS, MS, and PhD in Electrical Engineering. Diffie had a bachelor's degree in Mathematics. My question is this: after Number Theory was shown to have applications how many Mathematicians lost interest due solely to the fact that it was no longer "pure" math? I knew a topologist who grew embarrassed and closed his office door before discussing relativity. It just wouldn't do to be interested in applications. Perhaps I should h
        • But you do need some calculus for computer science. Not all those integration techniques (thankfully I've never had to do an integration by parts in my professional career), but things like limits and rates of change and logarithms and the relation between polynomial powers.

          BTW, integral of sqrt(1/csc(x)) = integral of sqrt(sin x), which isn't expressible in terms of elementary functions.

          • But you do need some calculus for computer science. Not all those integration techniques (thankfully I've never had to do an integration by parts in my professional career), but things like limits and rates of change and logarithms and the relation between polynomial powers.

            BTW, integral of sqrt(1/csc(x)) = integral of sqrt(sin x), which isn't expressible in terms of elementary functions.

            You just did.

    • by beelsebob ( 529313 ) on Sunday June 22, 2014 @08:48AM (#47292781)

      This whole article is based on a fallacy - that Computer Science is teaching people to code.

      This isn't what a Computer Science degree teaches you.

      • by Trepidity ( 597 )

        It is, however, what AP Computer Science teaches you. Maybe it's massively improved since I took it, but when I took it we spent an inordinate amount of time learning really stupid detailed things about C++, like the idiosyncracies of iostreams.

        • A mechanic is not an engineer, they are different skill sets. By analogy, you won't get far trying to apply CS if you don't know what CS is in the first place, what you can do however is tinker with the machine and make it do something interesting, perhaps even useful. CS is a branch of mathematics, it's closely related to Operations Research (or logistics as it is often called in the US), it makes heavy use of statistics, calculus, and other mathematical tools to solve computationally expensive optimizatio
          • Are you sure we're both talking about high-school CS courses, here? I'm not talking about a university CS degree. I have one of those, from a very theory/math-focused school, and yes, there was virtually no programming in it. But the AP Computer Science courses in high school are not like that, and should probably be renamed to AP Programming. That's also how Google and others are promoting them (as part of these "learn to code" initiatives), which was the jumping-off point for this article.

            • by MacTO ( 1161105 )

              The AP curriculum has probably changed over the years, but my AP computer science courses were computer science course. Yes, we learned a language. Yet we went beyond that to learn how languages (in general work), how particular algorithms work, as well as how to design and implement various algorithms. While the projects may have been boring by modern standards (i.e. we didn't frame the course in the context of games), the actual content and instruction was exciting.

    • Re: (Score:2, Insightful)

      by Anonymous Coward

      What the fuck is "AP"?

    • by Greyfox ( 87712 )
      And CS isn't learning how to crank out thousands of lines of Javascript code. The only people who think it is are ones who don't really understand CS (or computers) very well.
      • by Trepidity ( 597 )

        The "learn to code" initiatives, however, are precisely about teaching people to learn how to churn out code. They're not called "learn CS" initiatives for a reason. (And AP CS, despite the name, is more of a learn-to-code than a CS course.)

    • by jpellino ( 202698 ) on Sunday June 22, 2014 @09:46AM (#47293017)
      then it's a lot more like computational thinking. A team of us - 3 college math profs (goals) , 6 HS math teachers (reality check) and 2 scientists (applications) were asked to craft a HS math series from scratch. We were able to condense most of traditional HS math into three years, then allow for a year of electives. What we came up with as the start of the three years was to "force the card" onto the students with some evocative event, like the teacher walks into the room and declares "boys are taller than girls". And that's when the battle starts. "I'm taller than him!" "Yeah, but look at these four tall boys and those five short girls." Etc. So the socratic stuff starts, and they go through the developmental history of statistics in order to find the tools needed to solve problems (i.e., arguments about numbers). It leverages all the arithmetic they learned K-8 and some of the geometry, they need to think hard about why a stdev can be more sensible than a variance, why diagrams and structures are important in dealing with numbers, why arrays and variables and sorting and the procedures involved in mean/median/mode etc. have to be thought out thoroughly. Add in testing, logic, thresholds, and you pretty much have the basis of many of the skills you want a programmer to have when they're tackling an actual problem in context. Put a Ti-83-ish in their hands, and have them use it all along. Far less whining about "like will we ever use this" and a glimpse of what a career can be doing this sort of thing.
    • by plopez ( 54068 ) on Sunday June 22, 2014 @11:06AM (#47293397) Journal

      If you do not understand statistics you do not understand Science and empiricism. The programmers I meet are great at Discrete Mathematics, but if you beyond that, on to some thing that requires more of an exploratory mind set and data gathering, they are way out of their depth. They do not seem to understand the difference in how you approach things. Since, IMO, most of the universe is better investigated imperically they are out of their depth with real world data. They do not know how to collect, analyze, QA, or interpret it. With the emphasis on data analytics and and "Big Data" I consider that to be dangerous.

    • A 3 year old can build a LEGO car following instructions in a booklet. An older child can cook something using a recipe. Both are examples of non-code representations of algorithms.
    • Many people can't do that: even leaving aside that they don't know C or Java or Lisp, they also don't really understand what an algorithm or a computer program is conceptually, and have absolute no idea what kinds of things can be computed and what kinds can't, or which are easy or harder to compute.

      Is there in fact a better way to teach that than by sitting down with a teaching language and actually doing some programming? Writing a LOGO program to draw fractal trees was something a whole class of kids (some of whom had never used a computer before the class) managed to accomplish. Then we understood recursion, limits, loops, functions, operands...

  • Broken priorities (Score:4, Interesting)

    by Shadow of Eternity ( 795165 ) on Sunday June 22, 2014 @07:33AM (#47292529)

    We throw tens if not hundreds of millions of dollars at girls and women to get them to choose technology or engineering as a major, but completely ignore that they're already a majority to an overwhelming majority of graduates in literally every other major and dominate every level of education. Evidently it's more important that women not be a mere ~5% less of a program that's already only 10% of the degrees conferred in the US than it is to do something about the fact men are barely 1/3rd of college graduates in the first place.

    Because, yknow, that's not going to be unhealthy for society at all.

    • For the 2009-2010 school year men received 42.6% of bachelor's degrees awarded. Rates were higher for associate's and master's degrees, but lower for doctorates. Data here [ed.gov].
      • 1/3rd is 33.33333%, 42.6% is less than 10% higher than that, and that was five school years ago with the trend continuing (if not accelerating) since then.

        • So in other words, you were wrong, didn't show anything real to prove you're not wrong, but you are confident that you are right.

          That's actually a bigger problem in the U.S. these days. People are not actually good at things, but they're very confident that they are.
          • So in other words, you were wrong, didn't show anything real to prove you're not wrong, but you are confident that you are right. That's actually a bigger problem in the U.S. these days. People are not actually good at things, but they're very confident that they are.

            Yes. I wouldn't say you are immune to it either.

            But here's an issue. What if we do all this, what if we add gender sensitivity to the qualifications for men, and start making programming a mandatory class for women, and not allow men to take the classes, and we still don't have gender equity?

            Just based upon my experience in a University environment, and involvement with programs to get young women inviolved with STEM careers, I don't think we're taking the right approach. At some point, at some time, at

            • But here's an issue. What if we do all this, what if we add gender sensitivity to the qualifications for men, and start making programming a mandatory class for women, and not allow men to take the classes, and we still don't have gender equity?

              My guess: If you were looking for a course of action to make programming even less attractive to women, you'd be hard-pressed to beat that one. But then, as I said on the other thread, I've been seeing women-only sections of such courses fail for a long time; the wo

            • Consider the time demands on medical residents. Or attorneys trying to make partner. And yet women go into those fields. Btw, on another note, it has not been my experience in 15 years as a developer that the time demands are out of whack with other relatively high paying professions. If I ever had a job that matched up with the stereotype (frequent all-nighters, etc.) I would quit. My personal opinion for women's disproportionately low interest in software is the cultural baggage. For whatever reason t
              • Consider the time demands on medical residents. Or attorneys trying to make partner. And yet women go into those fields.

                Sure. But I'd put my hours up against any of them.

                Btw, on another note, it has not been my experience in 15 years as a developer that the time demands are out of whack with other relatively high paying professions. If I ever had a job that matched up with the stereotype (frequent all-nighters, etc.) I would quit.

                And so would a lot of people. Can't say I'd blame them. Then again, I was the highest paid person in my department, was immune to layoffs, and was able to retire at 55. Part of that was my willingness to take on the hard work that others were "too good" for or were worried that they were being taken advantage of if they had to work extra.

                My personal opinion for women's disproportionately low interest in software is the cultural baggage. For whatever reason they're more averse than men to associating themselves with the computer programmer stereotype, even if they themselves don't fit that stereotype. Women seem to be, at an aggregate level, less willing to pursue "geeky" professions. Medicine, despite requiring science classes and long hours, doesn't carry the same stigma as CS and EE.

                I certainly wouldn't deny that - it is a rational argument, and likwise a part of the problem such as it is. And part of

                • Sure. But I'd put my hours up against any of them.

                  Okay. But you're an outlier in your profession. Medical residents and partner-seeking attorneys are all expected to work long hours. Regardless, even if the avg. hours worked by software dev's were on par with the avg. hours worked by partner-track attorneys that wouldn't detract from my point, which was that women go into those two fields despite the long hours. Ergo "the long hours" isn't a great explanation for women not going into software dev.

                  Part

                  • It's not that men are pigs, it's that women aren't pigs. The double standard is strong enough that even some feminist websites like Good Men Project openly refer to it as problematic.

              • Consider the time demands on medical residents. ... Medicine, despite requiring science classes and long hours, doesn't carry the same stigma as CS and EE.

                I'm not arguing with you, just noting that my wife is a physician, and she carried the load in school and training just fine. And she did manage to overlook the stain of my CS degree. :-)

                • I'm certainly not saying women can't handle the workload. I mentioned medical residency as a counterpoint to the argument that women don't go into tech professions because of the long hours.
            • So in other words, you were wrong, didn't show anything real to prove you're not wrong, but you are confident that you are right. That's actually a bigger problem in the U.S. these days. People are not actually good at things, but they're very confident that they are.

              Yes. I wouldn't say you are immune to it either.

              But here's an issue.. (blah, blah, blah, lots of hyperbole and strawmen galore, refutations of opinions not offered, etc., etc.).

              Nonsense. I correctly pointed out that the GP claimed something to be true, was refuted, and offered nothing in response, except the opinion that he was *still* right.

              You, on the other hand, made a snide remark at me with no basis whatsoever, and then proceeded on a long tangent that had nothing to do with my point. I surmise that you missed my point, and read a lot into my post based on your prejudices, which was not there.

              So, congrats. Now there are two of you up on the stage accepting awards for hig

              • (blah, blah, blah, lots of hyperbole and strawmen galore, refutations of opinions not offered, etc., etc.).

                You, on the other hand, made a snide remark at me with no basis whatsoever,

                I'm sorry, I see, you are quite easily offended, by me saying you might be part of the problem too. Consider that your response might be proving the point.

                "Blah blahs", "strawmen", "snide remark" "long tangent"

                You do not control the conversations here. Neither do I. This is how threads evolve. If you don't like what I write, you can ignore it, refute it, or go all offense on me. Attacking me rather than the argument seldom wins the argument

                Do you care to respond to what I originally wrote?

                Point ou

        • by Rakarra ( 112805 )

          1/3rd is 33.33333%, 42.6% is less than 10% higher than that, and that was five school years ago with the trend continuing (if not accelerating) since then.

          42.6% is closer to "fifty-fifty" than it is to a third.

          • 1/3rd is 33.33333%, 42.6% is less than 10% higher than that, and that was five school years ago with the trend continuing (if not accelerating) since then.

            42.6% is closer to "fifty-fifty" than it is to a third.

            It's also an out of date figure that mischaracterizes how bad the gender gap is by using the lag of higher level post-graduate degrees among wealthy white students to cover up everything else.

    • Really would have been nice to have women in the Physics programs. We are talking almost no women at all in undergrad classes, and literally none in graduate classes. The fact that there are more women getting degrees isn't really relevant to the skew in some disciplines.
  • The role of AP Statistics is to offer an AP 'math' to students who don't stand a chance in AP Calculus, but who demand an AP math class on their transcript. Most do not consider AP Computer Science 'math' enough for it to play that role, hence the surge in AP Statistics. On top of that, AP Computer Science is perceived as being much harder than AP Statistics. For a Junior or Senior looking for a reliably easy AP, Computer Science is not the way to go.

    • I wouldn't call statistics a part of math, but the idea that it's somehow easier is ridiculous. If it's so "easy", why have so many people so many problems with actually using it? Even those who're supposed to be masters of it, like researchers and scientists?
      • by KPU ( 118762 )

        Statistics isn't easy. AP Statistics is easy. It's basically how to turn a story problem into numbers you plug into your calculator.

      • by qwak23 ( 1862090 )

        Anecdotal, but most people I know who've signed up for a stats class as a math based elective (working adults pursuing a college degree in their free time) have no clue what statistics actually is. The last one told me almost verbatim "It's just a bunch of percentages, how hard could that be?".

        • I took a refresher college stats course at around age 40. It certainly was not a bunch of percentages. It was a bunch a tests and distributions (t-test, poission, chi-square, anova etc) and how to apply them. Useful, but it didn't get as far as covering what I'd consider is required to be able to think critically about statistical inference and correct trial design. It worked for me, I had plenty of the latter and I'd forgotten much of the former. But for someone coming through the system the fist time, the

  • by evenmoreconfused ( 451154 ) on Sunday June 22, 2014 @07:47AM (#47292569)

    As Slashdot caters to an international audience, could someone please explain what AP means?

    • "Advanced Placement". They are high school courses designated to prepare the students for subject-specific AP tests. Colleges can give the students course work credit for good AP grades.
    • AP? (Score:5, Informative)

      by pjhenley ( 98045 ) on Sunday June 22, 2014 @07:57AM (#47292613)

      AP stands for Advanced Placement. The program intends to offer college-level courses to high school students. Each course culminates in a standard exam in the spring which is graded on a 1-5 scale. Some colleges award college credit to their students for AP courses they took in high school, depending on the score and the exam.

    • According to all the complaining, /. doesn't really "cater to" an international audience as much as it just has one.

  • by alen ( 225700 ) on Sunday June 22, 2014 @07:55AM (#47292601)

    when everyone knows how to code expect it to be the factory work of this century. find some pictures of early 20th century offices where everyone sits at a desk in a huge room with no dividers. it's already here again

    the value is going to be figuring out algorithms to make sense of the huge amounts of data being collected. the code to implement the algorithm will be your average low wage job

    • find some pictures of early 20th century offices where everyone sits at a desk in a huge room with no dividers.

      No, no, that's not a factory, that's an "open plan workspace", which facilitates communication among teams.

      When I leave my office to wander the floor doing my exemplary "management by walking around", don't let me catch you posting on /. during working hours.

  • Is a very specialised branch of mathematics. Yes, the basics are important to know, and they can help your understanding of things in general but knowledge of Statistics will not make other subjects easier. Knowing Statists, unlike all other mathematics, does not help with programming. I am not going to make broad generalizations about most students, but university Statistics was the hardest course I ever took. University Calculous was just more of the same, But Statists start out counter intuitive and weir

    • by Anonymous Coward

      I think stats SHOULD be taught at least at an intuitive level and have a good portion of it being how one can lie with stats.

      That way, we can start having an electorate that doesn't get so suckered by the stats in politics, advertising, and shitty articles.

    • Statistics is incredibly important for understanding algorithms and complexity theory. Many modern algorithms are randomized, and not understanding the statistics involved in using them can be a huge problem.
    • Knowing Statists, unlike all other mathematics, does not help with programming.

      uhhh.. what?

      Sure, it wont help with HelloWorld.c, ... but lets be real here... unless you definition of "programming" is gluing 3rd party libraries (written by people that know math) together, you clearly havent thought it through. While statistics doesnt encompass all the more-than-simple math knowledge required to be a good programmer, its a start.

      If you want any sort of proof of this, open up any volume of the Programmer Bible, aka Donald Knuths "The Art of Computer Programming" - very little code a

    • Knowing Statists, unlike all other mathematics, does not help with programming.

      Knowing statistics is essential for the programming I do.
      Your statement is too general and doesn't reflect the state of the universe as it is today.

  • I'm a CS grad and I took AP Stat and AP CS in high school, and I'm currently working as a programmer. In relation to programming, stat is very nearly worthless. There are certainly things I learned in stat that I use every so often, but nothing in relation to a programming task. In my high school, I had to choose between AP stat and calc and calc would have helped a lot more in college. Granted, for my line of programming, calc doesn't help either, but it would have helped more in obtaining the degree.


    • ...In relation to programming, stat is very nearly worthless...

      Have you ever needed to make an informed choice of pseudo- (or quasi-) random number generator? The first 200 pages of Knuth volume 2 (Seminumerical Algorithms) is highly enlightening for programmers, in my opinion, and reads better if you know the standard statistical distributions. Also, the more you know, the more likely it is for you to establish important relationships between concepts which are seemingly unrelated. People seem to mi
  • is a good starting point but probably needs to be combined with some type of 'critical thinking' class. I also think the question may be better off inverted - it would be far better for students to understand what code cannot and/or should not do.

  • I spend a lot of time writing R code, with occasional forays into SAS-land. But I don't really consider it a coding opportunity, nor would I want people like me to do the actual lower-level coding that is needed to make these software packages work adequately (yes, I know that lots of function in R are written in R, but there's still a majority of C/Fortran code under the hood. Because I'm not a computer scientist or a software engineer. I can write ok code in that it runs, does what it needs to do, and is

  • Statistics is how you lie to yourself about understanding the world.
  • "Welcome to the Derek Zoolander Center for kids who can't Statistics good, and who want to learn to do other stuff good too."
  • Cool, another phrase to add to buzzword bingo.

    In fact, the whole blog-post is full of similar bullshit. Here's an example: "Computational thinking for scientists, engineers, and other professionals further means being able to: [ ] Discover new science through analysis of large data". What is that even supposed to mean? Science doesn't get "discovered", it develops. It's a methodology. The analysis of the data (large and small) is the science. Never mind the fact that the "definition" itself of "computationa

  • In over 20 years as a professional programmer, I have met many, many good programmers. In the same time period, I have met maybe 3 competent program managers (or business analysts, or whatever they call them in your neck of the woods). I'm lucky to be working with a great program manager right now and it is amazing what a difference it makes. I would easily trade half my team for that one person. There will be a lot of people here who have *never* worked with a competent PGM.

    If you have people skills,

    • What you describe is a Program/Project Manager. But the same principles apply to a Business Analyst. In fact in my time in IT I have found that I end up doing more Business Analyst work because I understand the business, know SQL and programming so I can get the data I need, and I can process the data into something employees and managers can make decisions on. Often this is presented either as a web page or in Excel depending on needs.

      I think the most important skills for my success in both IT and bu
  • by RR ( 64484 ) on Sunday June 22, 2014 @09:50AM (#47293031)

    The main purpose of AP Statistics (and AP Calculus) seems to be to teach limited subsets of the functionality of the TI-89 calculator series. [xkcd.com] The programmability features of that calculator are never taught in American schools.

    Not that AP Computer Science is much better. Its main purpose seems to be to teach the Serious Programming Language du Jour, currently Java. Any algorithmic learning has to happen in between the struggles with that language.

    I'm not pleased with the College Board's position in American society.

    • Finally. When I was in High School, calculators where not allowed. In HS Chem and Physics we could at least use slide rules. In Math, it was just pencil and paper. Most people need to learn to calculate in order to solve specific problems. Math as its known and taught today isn't the way to teach the general population to do either. I'd suggest that buying HS students a laptop and a copy of Mathematica, and then teaching them to use it, would pay for itself in terms of how swiftly both the general con
  • As someone with a BCS who has worked in the industry for over 10 years in an environment highly focused on algorithmic efficiency and performance, AND got a near failing grade in stats in university, I fail to see how being proficient at statistics would help one in computer science. What is important is computation theory and algorithm theory, which are not things you learn in statistics. Unless you are trying to write code that does everything using Monte Carlo simulations that is.

    • This is about whether AP Stats classes in high school might get more girls interested in, and headed down the path of CS. Not about Stats being the be-all, end-all of CS education.

      BTW, how do you determine if your algorithm is performing more or less efficient if not through the use of statistics?
      • by brunes69 ( 86786 )

        A comment like this shows a fundamental misunderstanding of algorithmic theory. You don't have to determine if an algorithm is performing more or less efficient through sampling or statistics, you can PROVE it using math.

  • Computer Science != chugging out code. Anyone who has actually gone through a Computer Science degree (I'm nearly done with mine) will tell you that it's not purely writing code. Analyzing algorithms and computational complexity, doing Math up to or beyond Linear Algebra, Set Theory, and Theory of Computation, and possibly (depending on chosen electives) learning about Cryptography, Database Design, and Artificial Intelligence indicates that learning about how computers work, what code does, how important i

  • by reiscw ( 2427662 ) on Sunday June 22, 2014 @11:25AM (#47293479)
    I am a teacher who has taught math and electronics in a high-performing public suburban school and currently teach math and computer science in a comparably performing urban preparatory school.

    There are several reasons why AP CS enrollment has flat-lined as AP Statistics has surged (here are three that came to mind immediately):

    1) There are a lot more kids taking Algebra as 8th graders. These kids (assuming success through the American four year Algebra, Geometry, Algebra 2, Precalculus sequence) need a course to take senior year. Most high school teachers will suggest AP Calculus or AP Statistics as an option. My previous employer went from 1 section of AP Calculus when I started to 7 sections of AP Calculus and AP Statistics by the time I had left (enrollment declined slightly during that time). Yes, the average AP scores went down a little during that time --- but I still think it's a good thing that more kids are taking the classes.

    2) Lots of math teachers are willing and able to teach AP Statistics, but few can teach AP CS. In most states you need a separate license to teach it. I teach at a private school, so no such license is necessary (my undergrad is in electrical engineering, most of my work experience was software, and thus I feel comfortable teaching the course). The topics covered on the A exam (the AB, or harder, exam that I took in high school no longer exists) are not trivial. Inheritance, interfaces, polymorphism, and sorting/searching algorithms are all presented. Data structures topics (linked lists, stacks, queues, etc.) are not taught but could easily be taught in a follow up course, since most students taking AP CS at my school are juniors. Some of my teaching colleagues who know how to program would struggle with the object-oriented focus of the exam given that they came up during the Pascal era.

    3) In the era of budget cuts, if you can only get 15 students to register for AP CS, it will not run in many schools. Sometimes it's feasible to run it every other year, but often that doesn't work. Many kids who are interested in programming cannot fit two semesters into their high school schedules. AP Statistics, however, fulfills the fourth year of mathematics that many schools require and thus is easier to fit into the schedule.

    Let me say that I very much enjoy teaching the course. The examination in CS is challenging and well written. There are some topics that I'd like to see added (file input / output is not typically covered). I am confident in my students' ability to take Data Structures as a freshman if they pass the exam with a 4 or 5.
    • by Arker ( 91948 )
      IMOP the two subjects that are critical here and get neglected are logic and number theory. Logic typically gets covered as a first or second year course in college - after many years of courses that depend on it. Teaching it much earlier would make more sense and result in better comprehension of other subjects.

      Number theory is, in my experience, the branch of mathematics most relevant to programming. Far more relevant than either calculus or statistics, and (for me at least) much easier as well. Like logi
      • I agree in regard to logic. Critical thinking needs to be taught as early as the human mind can comprehend it. This is essential, and it isn't being done. I disagree that number theory is appropriate. Some of the applications of number theory are useful, certainly, but I couldn't apply number theory theory to either my CS or my Physics degree. I think Information Theory would be more useful, or Operations Research, even, for that matter.
      • It's my favorite trick at work, to crack out a bit of number theory and then show a two line algorithm to solve the problem people have been failing at for weeks.

        Number theory should be taught in elementary schools.

    • The few AP courses available to me in high school were CRAP. They taught to the test; I got out of 2 semesters of Calc. I took Calc in college anyway and it was almost a different world.

      All people care about are simplistic certifications - which is what the AP stuff is. It will gravitate an education into a certification training course and there is a big difference between the two of those. Forget actual understanding or building up skill level (aka IQ) in the area.

      I would recommend AP Statistics not beca

  • What about Code Monkey Island [codemonkeyplanet.com]? This board game should be in every elementary school in the world!

  • by Joe_Dragon ( 2206452 ) on Sunday June 22, 2014 @11:50AM (#47293581)

    CS is not IT and some cases not programming.

    Some of CS is programming at very low levels doing stuff that for the most part is done by API's and the OS. Now some theory is good but an overkill of it while lacking other more needed / hands on skills is bad and leads to poor code / people who think that this will work but it does not work that well.

    And on the other side you have people with the more hands on skills and some theory who can put out good code and can fix up the poor code.

  • What do we need so many more programmers for anyway?

    The internet was world-changing. I have no doubt that in 1990-something more getting more programmers in the world was a very laudable goal. What do we need a world population filled with coders for now though? Endless UI permutations? Is there really a whole new, currently un-thought of world changing application just waiting to be written for the benefit of humanity? What is it, an iPhone game? Come on!

    We need more scientists working on clean energy sol

Top Ten Things Overheard At The ANSI C Draft Committee Meetings: (10) Sorry, but that's too useful.

Working...