Slashdot Mirror


High School Computer Science: Look Ma, No Textbooks!

theodp writes: Computer Science Teacher Alfred Thompson wonders how other high school CS teachers use textbooks. "It's not a conversation I hear much about," he writes. Indeed, many teachers apparently don't rely on CS textbooks much at all. In fact, the highly-touted new AP Computer Science Principles (AP CSP) course does not require a CS textbook for students (sample College Board AP CSP syllabus), albeit to the chagrin of some. Some of the bigger providers of AP CSP curriculum -- e.g., BJC and Code.org, both of whom partner with Microsoft TEALS -- don't require a traditional CS textbook. But with teachers being recruited to teach Computer Science even if they don't have a CS background, should students learning CS have a textbook? Or is the high AP exam pass rate enjoyed by AP CSP students proof that no-more-books works?

110 comments

  1. BJC and code.org only serve a single purpose. by nimbius · · Score: 0

    To drive down the cost of sourcing and employing programmers specific to the construction of code for major multinational corporations.

    in much the same way slavery worked in 18th century america, these programmers are never intended to understand or learn the fundamentals of their trade. Instead, like the slaveholders cobbler or slaveholders carpenter, theyre instructed only as much as they need to know for the task at hand. There are no textbooks required, because these programmers are divorced from the core competency and theory of their trade by design.

    --
    Good people go to bed earlier.
    1. Re:BJC and code.org only serve a single purpose. by Killall+-9+Bash · · Score: 1

      Everyone's a coder, if you lower your standards enough. Welcome to the new white slavery.

      --
      "Prediction: within 10 years, Windows will be a Linux distribution." Me, 7-6-2016
    2. Re:BJC and code.org only serve a single purpose. by Cinnamon+Beige · · Score: 2

      Are you kidding me? You chose the worst examples. Try the historic assumption of the public schools that the vast majority of their students would be working blue-collar factory jobs--slaves being taught skilled trades, especially the trades you picked, got the core competencies and theory of their trade. I'm not sure how a carpenter that lacked those would count as a carpenter (vs a random with a box of woodworking tools) and I sincerely doubt anybody would have any use for a cobbler without those skills. Skilled labor is called skilled for a reason.

      That said, most of the people they're teaching probably would never gain particularly in-depth programming skills. You may also have distinctly better results by treating the 'core competency and theory' of programming as something you do after you've learned basic coding--more people learning them better. (And, personally, I do agree with the school that the best way to learn programming is to read code; that and the documentation for the language have taught me more than any textbook on programming has...)

    3. Re:BJC and code.org only serve a single purpose. by nitehawk214 · · Score: 1

      If you never expand on your knowledge after school is out you deserve the crappy coder job you get.

      --
      I'm a good cook. I'm a fantastic eater. - Steven Brust
    4. Re:BJC and code.org only serve a single purpose. by Darinbob · · Score: 4, Informative

      Computer science is not "programing skills". This is the mistake I think these people keep making. If they want programmers, then it's not computer science and is instead jobs training. We don't learn algebra in high school because we're going to be professional mathematicians, and we don't learn physics because we're going to be a scientist, and we don't learn civics because we're going to be a politician.

      The point of high school is to get a well rounded education in preparation to becoming a full ledged participant in civil life. Part of that is getting a trade,and much of having a trade involves these extra life skills (reading, writing, communicating effectively). And there is much more to life than having a trade. That's why we learn literature and history. Maybe you don't need that when being an auto mechanic on the job, but you need that when at home, when interacting with the community, when voting, and so forth. You need the arithmetic so you can maintain a proper budget, plan for retirement, do your taxes, and so forth. A public high school is an investment that the public makes in order to provide a large payoff in the future when you have better educated public.

      So computer science in high school should fit that mold also. Everyone should know something about how computers work, whether or not they end up going into a computing field. And by how they work, this is so much more than programming; it's math, electronics, digital logic, algorithms, a dab of theory, and so forth. And this teaches logical thinking; even simplistic modern programming style at least teaches you how to divide a complex task in smaller parts, divide and conquer, it's an important life skill.

    5. Re:BJC and code.org only serve a single purpose. by serviscope_minor · · Score: 1

      This is so much bullshit I don't even.

      To drive down the cost of sourcing and employing programmers specific to the construction of code for major multinational corporations.

      Yeah possibly, on the other hand, it's better to be educatig people to be card designers than buggy whip makers.

      in much the same way slavery worked in 18th century america, these programmers are never intended to understand or learn the fundamentals of their trade.

      WTF?

      No, seriously, WTF?

      The point is to get people started. Very very few people are suited to starting computing by learning about fundamental theorems of computability or semiconductor design, depending on what you personally consider to be "fundamental".

      A course that doesn't give you everything at once is not somehoq equivalent to slavery. there have never been more resources for learning the fundamentals

      Instead, like the slaveholders cobbler or slaveholders carpenter, theyre instructed only as much as they need to know for the task at hand.

      Except the difference is they were you know, slaves. The completelty not slaves are free to (a) learn more and (b) leave and get another job.

      --
      SJW n. One who posts facts.
    6. Re:BJC and code.org only serve a single purpose. by Darinbob · · Score: 1

      There are so many crappy coders now that they are influencing everyone around them into thinking that crappy coders are a good thing, and that we need more tools to help out crappy coders, and that we should fight off outsourcing to countries that specialize in crappy coding.

    7. Re:BJC and code.org only serve a single purpose. by Cinnamon+Beige · · Score: 1

      Most of your list is things you either ought to be obtaining elsewhere and/or earlier, or it is something a student most likely/easily going to attain after learning some programming--and, not sure how to break this to you, but most public school systems in the US do a damn lousy job of teaching anything. (They certainly don't teach history. It's social studies, which means you can skip parts of history that don't fit with the story you want to tell or which are embarrassing.)

      The thing with starting with coding is because a lot of later classes on CS are going to assume you've got at least a generic understanding of code under your belt and if you like it, you'll actually be interested in learning more and developing greater skills in it--which means you'll pick up the theory and other elements and often be able to see how they work relatively soon, or at least not be subjected to bad explanations from people who probably understand the material worse than you do. Current thinking is that all a teacher for K12 students needs to actually know is how to teach--not the subject, never mind that a person who knows, understands, and enjoys the subject is hands down the best possible teacher you can get.

      Incidentally, some of your list can be taught at elementary school or earlier. You can find many examples online of how to model logic gates with marbles (such as this) which means you can render a basic mechanical computer as a child's toy, and breaking tasks down into smaller, more manageable parts is a skill you can definitely teach a child long before they are much good at reading and writing.

    8. Re:BJC and code.org only serve a single purpose. by Darinbob · · Score: 1

      I certainly learned history in high school. American history, California history, world history, ancient history. They don't teach these things anymore?

  2. The book they need isn't a CS book. by mcmonkey · · Score: 5, Insightful

    If they want to teach computer science (and not software development or programming) a text on abstract algebra or discrete mathematics is likely going to help more than anything with "computer" in the title.

    1. Re:The book they need isn't a CS book. by THE_WELL_HUNG_OYSTER · · Score: 4, Insightful

      Did you see the AP Computer Science Principles curriculum? It has topics like "Copyright and the law", "Impact of your life", "web crawlers", "indexing pages", "ranking pages", "Privacy in the age of big data". etc. Is this a joke?

    2. Re:The book they need isn't a CS book. by Anonymous Coward · · Score: 0

      If they want to teach computer science (and not software development or programming) ...

      Seriously? You people are getting ridiculous with your pretensions and titles.

      OK, I'll play. You know there are no jobs for computers scientists. I just see jobs for coders, programmers, software developers, software engineers - with all the same job descriptions. (programmer=software developer=software engineer).

      It sucks that I have a worthless degree. See, I'm a computer scientist and the only job I'm apparently qualified for is working at Wal*Mart. I don't cod or program - that's beneath me.

      And for you other putzes, at the Yale school of architecture, they actually make the students go out and pick up a hammer and drill.

      You people need to get over yourselves - fast - because your jobs are gonna be sent overseas. We're sending over another few thousand later this year.

    3. Re: The book they need isn't a CS book. by Anonymous Coward · · Score: 1

      https://www.indeed.com/m/jobs?q=Computer+Scientist

      10,000+ jobs under computer scientist. Walmart has some high paying positions available for computer scientists if you live in Arkansas (since that's apparently the only company you are qualified to work at). Maybe you just aren't very good at what you do.

    4. Re:The book they need isn't a CS book. by Nidi62 · · Score: 1

      If they want to teach computer science (and not software development or programming) a text on abstract algebra or discrete mathematics is likely going to help more than anything with "computer" in the title.

      So Abstract Algebra and Discrete Mathematics for Computers is a no go then?

      --
      The only thing necessary for evil to triumph is for it to be pitted against a slightly greater evil
    5. Re:The book they need isn't a CS book. by p4nther2004 · · Score: 1

      OK, I'll play. You know there are no jobs for computers scientists

      Can you provide an explanation of P vs NP? Does it apply to the search of Prime Numbers? What real world examples of P vs NP?

      Too difficult? Can you explain what a DFA/NFA is? What the corresponding architecture is in electronic circuits? What sort of problems (real world) can a DFA/NFA solve? What sort can't it solve (think Pumping Lemma)? Can you provide an example (real world)?

      Yeah. Everyone wants programmers. Even if they go to boot-camp schools and come out in 26 weeks knowing a gee-wiz-bang-language. Then they use floats for storing monetary amounts and the CEO wonders why they're losing money.

      Not that we can complain. Even computer scientists (a la Marvin Minsky) can get things wrong.

    6. Re:The book they need isn't a CS book. by Anonymous Coward · · Score: 1

      Theoretical computer science is a highly specialized field and should not be taught at the high school level. Anyone going in that direction should take all the math they can get instead. Practical computer science starts with learning how to program. You can't talk about programming if you don't know what you're talking about. High school computer science should be practical. It should not be a course on word processing. It should not be a course on Windows maintenance. It should teach programming.

    7. Re:The book they need isn't a CS book. by K.+S.+Kyosuke · · Score: 2

      That depends. Are you a computer?

      --
      Ezekiel 23:20
    8. Re:The book they need isn't a CS book. by Nidi62 · · Score: 2

      That depends. Are you a computer?

      I don't think so. I guess it depends on which philosopher you talk to?

      --
      The only thing necessary for evil to triumph is for it to be pitted against a slightly greater evil
    9. Re:The book they need isn't a CS book. by Anonymous Coward · · Score: 1

      If they want to teach computer science (and not software development or programming) a text on abstract algebra or discrete mathematics is likely going to help more than anything with "computer" in the title.

      That would definitely be a great way to steer high school kids away from a career in computers.

      As if they could even find a high school teacher who could teach it. I never found a college professor who could.

    10. Re:The book they need isn't a CS book. by WallyL · · Score: 3, Funny

      That depends. Are you a computer?

      What's a computer?

    11. Re:The book they need isn't a CS book. by h4ck7h3p14n37 · · Score: 1

      I think you're missing OP's point. Businesses typically don't hire "computer scientists", they hire Python or Java programmers, or Oracle DBAs. Traditional schooling doesn't prepare students to work these types of roles.

    12. Re:The book they need isn't a CS book. by Anonymous Coward · · Score: 0

      Yes, I am. One who computes. I make computations every day. However, you are intentionally misplacing the modifier. Welcome to English.

      And no, you likely don't need a textbook for AP CS. The Internet tends to have a great deal of free literature on programming due to its origin. Wikipedia is likely sufficient for any theory you need at that level. A reference for your language of choice is readily available as well.

    13. Re:The book they need isn't a CS book. by Assmasher · · Score: 1

      This. Exactly. They don't teach Computer Science, they teach programming and some of the soft areas around programming. There's absolutely nothing wrong with that - but it's not Computer Science as defined at the collegiate/university level.

      Actual computer science would likely bore the bejeesus out of high school students and yield little benefit except to those already determined to pursue a CS oriented path after graduation.

      --
      Loading...
    14. Re:The book they need isn't a CS book. by p4nther2004 · · Score: 2
      Actually his point was that "traditional" CS isn't valued by business.

      Which is mostly true. Most businesses can't tell the difference between a DFA/CFG/Turing Machine if they tried.

      However the argument that CS doesn't HAVE value is completely false. (And thus my comment about storing monetary amounts in standard floats -- a practice I've personally seen businesses doing in 2016. Why are we getting rounding errors?)

      BTW: We're talking AP exams - these are college credit exams for CS. I'd might allow allow them to skip Intro to Programming Languages with that test...but COT?

    15. Re:The book they need isn't a CS book. by Anonymous Coward · · Score: 0

      The book they'll need depends on what they teach in the course. I do agree with your sentiment that the material should be applicable subject matter as much as possible.

      If it is an AP class, they definitely should be looking at sourcing college textbooks. I didn't have programming in my HS back in the day, but when I reached college the professor treated the textbook as a reference material. In fact most college professors seem to be like that. They'll give you an outline for the semester sayings this week study this chapter and come prepared for the discussion and programming assignments. It was up to you to make use of the information in the text book.

      Just an example of why this really is the case, is one semester I purchased the course's book in the college bookstore used. When I arrived the first day, the professor listed the 2nd edition (new edition) as the course book, not what the bookstore was selling. He acknowledged the bookstore was late and in a few weeks you could probably exchange it for the new one when it arrives.

      I kept the 1st edition cause I didn't want to have to take back my used book and trade up to a new book, with likely little relevant material change. I think pretty much everyone else did the same.

    16. Re:The book they need isn't a CS book. by Anonymous Coward · · Score: 0

      Computer Science in academia is kind of a joke.

    17. Re:The book they need isn't a CS book. by mysidia · · Score: 1

      That's why it's "Computer Science Principles" and not "Computer Science"; the students aren't learning any of the core CS which includes things like

      • (1) Digital Logic -- The differences, pros/cons, and appropriate applications for Analog versus Digital electronics and Analog and Digital computing, Symbolic Logic topics from philosophy - Formal Argumentation from philosophy - What is the definition of a sound argument? - Propositions and Proofs in the language of symbolic logic and Mathematical logic, logical Syllogisms, Boolean Logic and representation, Boolean Algebra, Logic Gates (AND, OR, NOT, XOR, NAND, NOR), Simplification, Karnaugh Maps, Binary and Hexadecimal number systems and the skill to do arithmetic and conversions in the binary and hexadecimal numbers (Translate, Add, Subtract, Multiplication and Long-division within Base-2 without use of a calculator or aide), Gray Code, Binary representations of integers, decimal numbers, character strings, and complex structures, Multi-byte representations, Unicode, Big-Endian vs Little-Endian, 1-st complement form IEEE 1394 Floating point;
      • (2) Introductory programming --- Basic programming and use of common tools for at least two major programming languages -- All common primitive Data Types from C++ and X86 assembly, Variables, Constants, Declarations. Statements. Putting together "Hello World". Expressions. The difference between a Statement and Expression. Common programming errors such as "Works by coincidence", unintended assignment; Undefined Behavior; Off-By-One; Miscounting; Buffer Overflow. Conditional Statements and branching. Looping structures and writing code with both conditionals and looping. Nested looping structures and Basic recursion. Pointers to basic types.
              Pointers to functions. Pointers to pointers. Pointer-based and Array-based Linked lists.

      •         (3) Basic Software Engineering and Assembly -- Learn the basics of X86_64 assembly language and to compile and execute software in a console environment. Understand how .SO and .DLL libraries, dynamic, and static linking works on major operating systems. Learn to properly use common version control systems: Git, Subversion, Mercurial, and Perforce. Learn to analyze binary files without source code using Binary Analysis tools. Debug and analyze software execution in two or three common languages with or without source code using common debugging tools such as Valgrind, GDB, or Visual Studio's debugging. Use breakpoints. Use disassembly to identify classes of errors.
      • (4) All basic Data structures -- Recursively-defined datatypes, Implementations of Trees, UnionFind, Heaps, Queues, Stacks, Priority Queues, Huffman Coding, Hashing, B-Trees, Merkle Trees, Complex data structures
      • (4) Construction and Analysis of algorithms -- Big O notation, Sorting, Djikstra's Algorithm, A* Search
      • (5) Set theory, Graph Theory, Recurrence relations, and the applications of Discrete and Applied Math to computer science
      • (6) Theory of Computation: Turing Machines, Lambda Calculus, Procedural Programming, Functional Programming, OOP.
      • (7) Foundational concepts in CS: Discrete Finite Automata, Regular Expressions, Finite State Machines, The construction of Parsers for formal languages LR LALR, Parse trees, Construction of Compilers, Turing Machines, Turing Completeness.
      • (8) Modeling functions using Splines and polynomials, F-NORM, Mathematics and applications of High-dimensional spaces, Machine learning, Statistical Analysis of Algorithms, and AI principles --- N-Space, Clustering, Classifiers based on Simple regression, Non-Linear regression, DFS Search, Games, basic Game Theory, Neural Networks
    18. Re:The book they need isn't a CS book. by Darinbob · · Score: 1

      I don't think there are high school level texts on computer science. They may have something about programing (not the same as CS), they may have an introductory electronics text, but I don't think there's a good introductory level text that skims the surface of what computer science encompasses.

      Thought that's not really needed. I think high school should be the prerequisite before you really dive into computer science as a major in college. Just like high school science just skims the simple surface, you can't really get deep into science until you get college math under your belt. Remember all the greats who built up the industry from scratch, build all our programing languages, designed all the computer architectures, figured out how to make self driving cars, none of them took a high school computer science class.

      I'd rather the high school level just have a similar broad overview. Basics of programming, basics of computer architecture, basics of algorithms, basics of numerical analysis, basics of digital logic.

    19. Re:The book they need isn't a CS book. by TechyImmigrant · · Score: 1

      Nice post, except for...

      > IEEE 1394 Floating point;
      IEEE 1394 is not a floating point standard. IEEE 754 is.

      --
      I should use this sig to advertise my book ISBN-13 : 978-1501515132.
    20. Re:The book they need isn't a CS book. by THE_WELL_HUNG_OYSTER · · Score: 1

      I don't see how "Copyright and the law" is a topic in Computer Science *or* Computer Science Principles.

    21. Re:The book they need isn't a CS book. by Kevin+Stevens · · Score: 1

      I am teaching this curriculum right now (as a volunteer for https://www.tealsk12.org/ ) and I can tell you that 90% of our time is spent teaching coding, either HTML or CSS. We wrap the fluff stuff into the curriculum to break up the harder stuff.

      The point of this class is to teach basic programming skills and computer concepts so that the regular AP CS class in Java (which I also teach) isn't such a culture shock. Kids drop out of that class at a very high rate and they are trying to give a sanctioned path to learning the real stuff. The regular class was very similar to my first semester CS class in content.

    22. Re:The book they need isn't a CS book. by Anonymous Coward · · Score: 0

      Exactly Chris,

      It seems like Chris is a victim here. He keeps on reading those SEO, youtube algorithm, basically get rich quick sites. He doesn't realize that he is the fish for them since they make money off him with their own scheme. Then, he wastes his time trying to implement what those sites suggest and he ends up disturbing people.

      I mean, those crooks tell Chris that he has to build personal brands and he goes on the Internet and makes everything about himself public!

      I believe we should bring this up at our next meeting. He might not be our only patient victim of such on-line abuse.

      --
      Silvia Bunge
      Psychology Department
      University of California, Berkeley

    23. Re:The book they need isn't a CS book. by Anonymous Coward · · Score: 0

      Why not? You can send floating-point numbers over FireWire...

    24. Re:The book they need isn't a CS book. by Anonymous Coward · · Score: 0

      Shut the fuck up chris you don't know anything about Computer Science

    25. Re:The book they need isn't a CS book. by Anonymous Coward · · Score: 0

      What a coincidence! cdreimer replying in Anonymous Cashew's thread!

    26. Re:The book they need isn't a CS book. by Anonymous Coward · · Score: 0

      No coincidence. Just read FatCashewsLoveMe's comment history.

    27. Re:The book they need isn't a CS book. by Anonymous Coward · · Score: 0

      Is that a new compiler flag for optimization?

    28. Re: The book they need isn't a CS book. by wellingj · · Score: 1

      You act like college professors are professional teachers. They aren't. They are professional students.

    29. Re:The book they need isn't a CS book. by mysidia · · Score: 1

      I don't see how "Copyright and the law" is a topic in Computer Science *or* Computer Science Principles.

      Copyright and the law is not a computer science topic; it has no business being in a High-School level course, as Copyright is a very complex thing where an adequate teaching of it would leave no time and space for meaningful CS education.... it sounds like something the RIAA would have lobbied for.
      However Digital Copyright is a "Computer Literacy/Computers in Society topic", that would be something like a 1-credit class CS students get as a required elective in college, and something software developers would need to know something about to know not to go copy+pasting other peoples code into their work and go into business and protect their works.

    30. Re:The book they need isn't a CS book. by Anonymous Coward · · Score: 0

      Now THAT's an insightful comment if ever there was one.

    31. Re:The book they need isn't a CS book. by Anonymous Coward · · Score: 0

      Slashdot management should read FatCashewsLoveMe's comment history and delete the account for violating TOS by having a hard on for creimer.

    32. Re:The book they need isn't a CS book. by Anonymous Coward · · Score: 0

      Someone who does computations.

    33. Re:The book they need isn't a CS book. by edittard · · Score: 1

      X as taught in high school is not the same as X defined at the collegiate/university level.

      Isn't that rue for all X?

      --
      At the bottom of the /. main page it says 'Yesterday's News'. Well they got that right.
    34. Re: The book they need isn't a CS book. by Anonymous Coward · · Score: 0

      The topics aren't the same. E.g. In college you'll study linear algebra, algorithmic efficiency, computer engineering - the mathematics/science and underlying tenants behind the things they teach in high school (programming basically.)

      Ironically, this is why you could get a quality CSCI degree and come out basically useless to a software company, lol.

    35. Re: The book they need isn't a CS book. by edittard · · Score: 1

      underlying tenants

      That's not taught in CS. You want property law, room 12A.

      --
      At the bottom of the /. main page it says 'Yesterday's News'. Well they got that right.
  3. I don't think this is new by BenFranske · · Score: 4, Interesting

    I took AP CS in 2000-2001 back when it was C++ based and we didn't use a textbook then either so I'm not so sure this is a new phenomena. We relied on lectures and a lot of hands-on exercises which seemed to work out pretty well. I suspect at that time the AP CS market was quite a bit smaller so there probably were a pretty limited set of textbook options, especially geared at high school students. Now, with the advantage of substantially more online resources there are probably even fewer reasons to be using a textbook. The teacher does need to put some effort into pre-selecting some good online resources to share with students as well as some effort into being a reasonably proficient programmer themselves though. There are many ways to do that too though and my AP CS teacher taught one or two sections of AP CS and the rest of the time was a math teacher which was pretty standard I think.

    1. Re:I don't think this is new by Anonymous Coward · · Score: 0

      I learned C++ from the Borland Turbo C++ manuals that came withe the software. Before that I learned BASIC from Compute! Magazine type-in-games. The only thing you need to learn a language is a basic syntax guide, a few examples, a desired end result and a few decades.

    2. Re:I don't think this is new by TimMD909 · · Score: 1

      The AP CS course back then thought me nothing. By the time I was old enough to take it, I was already way past it. One of the "hardest" tests was creating a linked list with pointers with some simple user input/output. Not particularly "advanced" and was very disappointing. My suspicions are that students who rely on elementary and high schools to teach them about computers, in any capacity, aren't learning much. They're also robbing themselves of the time when it'd be easiest to pick up the core concepts.

    3. Re:I don't think this is new by TechyImmigrant · · Score: 1

      I completed my CS degree in 1991 and my A-level CS 3 years before (in the UK). There we no specific textbooks back then either, but there were a lot of books to buy if you wanted to succeed. Various languages, electronics books, computer architecture books, formal methods books, graphics algorithms etc. Some of the lecturers published a list of "books you might like to get". No teaching was directly from a book. When did it become expected that a CS course needs a textbook?

      --
      I should use this sig to advertise my book ISBN-13 : 978-1501515132.
    4. Re:I don't think this is new by networkBoy · · Score: 1

      My programming class used the ANSI C specification as the "textbook". Teacher said it was optional, but recommended.

      --
      whois gawk date unzip strip find touch finger mount join nice man top fsck grep eject more yes exit umount sleep dump
    5. Re:I don't think this is new by Anonymous Coward · · Score: 0

      I took my first computer course in 1972. We also did not have text book, just a teletype and the instructor giving quick iver views if BASIC instructions: PRINT, LET, IF THEN and GOTO. It was much later in 1979 when FORTRAN. Later it was with PDP11 Assembler where a manual from the vendor shared by all was the best "book". With IBM Assembler it was the hardware's Function Reference Guide that was the best "book".

      As a senior in high school, we (6 of us) taught the computer class to beginners and the instructor (math teacher). The instructor taught us numerical analysis, so we could try coding that.. It was a deal we struck after the class we wanted to start fell through (no enough interest)..

      So in the end, it was human teachers and hardware manuals are the real books for CS courses.

    6. Re:I don't think this is new by h4ck7h3p14n37 · · Score: 4, Interesting

      You took a C++ course and you didn't use Stroustrup's book, "The C++ Programming Language"? Isn't that like learning C and not reading K&R's book about it or taking a course on design patterns and not reading GOF?

      There are a lot of classic computer science texts that I would expect all students to be familiar with.

    7. Re:I don't think this is new by sexconker · · Score: 1

      Good ol' Turbo C! I spent way too much time making various sounds with the pc speaker.

    8. Re:I don't think this is new by jandrese · · Score: 1

      Yeah, I knew I was going to be a CS major in college so I took the AB test and then discovered that basically no colleges I applied to gave it time of day. I still had to suffer through the stupidly easy "weed out" class like every other freshman in the program.

      --

      I read the internet for the articles.
    9. Re:I don't think this is new by godrik · · Score: 1

      Note AP CS and AP CSP are different classes. AP CS is meant to be more technical. AP CSP is meant to be less technical but "inspire" more.

    10. Re:I don't think this is new by Anonymous Coward · · Score: 0

      Stroustrup's book wasn't the easiest to learn from, nor necessarily the best written. I might still recommend Stan Lippman's "C++ Primer", even to an experienced Java programmer trying to pick up C++, for instance.

      His latest edition might be different because the language changed so much between C++98 and C++11 that all the older C++ books are now dated, if not obsolete.

    11. Re:I don't think this is new by Anonymous Coward · · Score: 0

      Stroustrup's "The C++ Programming Language" is not intended for teaching C++.

      For that purpose he wrote this text:

      http://www.stroustrup.com/programming.html

    12. Re:I don't think this is new by Anonymous Coward · · Score: 0

      The lack of textbook use when teaching programming courses would explain all of the stupid questions on stackexchange.

  4. Curriculum Textbook by Anonymous Coward · · Score: 0

    As long as there is a proper curriculum guiding the class it doesn't seem important whether or not there is one primary source or multiple different sources.

  5. High by mnemotronic · · Score: 2

    ... Or is the high AP exam pass rate enjoyed by AP CSP students proof that no-more-books works?

    I believe that proves the test is well correlated to the class content (or vice-versa). Does the class content help the students find meaningful, relevant employment?

    --
    The Russians have won. They have made the world a cesspool of distrust, greed, fear and hate.
    1. Re:High by JoePete · · Score: 1

      And one could argue that the high failure rate of software today indicates that whatever these kids are learning - in high school and college - isn't translating to quality software. I think that is the underlying issue. Textbooks might not be appealing to students (or teachers) who want to "do," but far too often we see developer running before crawling. There is a lot in that textbook that they need to learn still.

  6. Most info is already available by Anonymous Coward · · Score: 4, Insightful

    CS, much more than most other STEM fields, already has absolute loads of reference information and tutorials and explanations available online. A textbook is supposed to be one-size-fits-all volume with all you need to know to get to a certain level in a certain topic -- a really useful thing to have with no internet, or on a topic where the internet doesn't already have all that information in easily-accessible form, but with the tradeoff that everyone using that textbook gets taught in roughly the same way, which won't work well for all of them. For CS, especially high-school-level CS where you aren't dealing with the more complicated aspects of algorithm performance or CS theory, easily available resources outside textbooks can easily cover everything necessary while also allowing the versatility to more easily suit different teaching and learning styles.

    1. Re:Most info is already available by avandesande · · Score: 1

      This is true about almost any established subject.. texbooks are basically a money making scam for schools.

      --
      love is just extroverted narcissism
  7. Highschool teachers often don't have the most by Anonymous Coward · · Score: 0

    direct background. My physics teacher did not have a major in physics, biology teacher was not a biologist etc etc etc. What they do need is a teaching background, a sound mind, and an interest in the topic. High-school is introductory level.

    1. Re:Highschool teachers often don't have the most by Anonymous Coward · · Score: 0

      This is absolutely true. As an example, I teach computer apps and have an MBA. This is related in that I can look at what they are doing from a business perspective. However, I is quite a leap from there to my Education Technology endorsement (Education Technology is the Industrial Arts endorsement). However, I did work as a Technician and shop manager for several years before becoming a teacher. This was the endorsement to teach Robotics; however, the other Robotics teacher has no industrial background and still doesn't have her endorsement. She currently only has a Math endorsement.

      As far as sciences. The teachers, generally, have a BS in Sciences and a MEd. in teaching. in many cases, the BS is in a different field of science than the one they are actually teaching. . . But hey' Science is Science. . . right?

      Most of the teachers are licensed in their subject; bit no, that does not mean that they majored in that sub-category, or even that field.

    2. Re: Highschool teachers often don't have the most by Anonymous Coward · · Score: 0

      You teach computer apps? Wtf is that? No wonder the field has gone to shit. Even the teachers don't know wtf to teach.

  8. Obviously no by AlanBDee · · Score: 1

    What value does a textbook really bring to a classroom beyond being expensive? I love reading but I stopped buying physical books years ago. Maybe the library at the school can have physical books for students who like a physical book. Most would be better off using a more interactive medium; especially for subjects that change often or are difficult to master/understand, like math or computer science. Oh, did you hate history? There are some great YouTube channels that make it fun.

  9. If there's no Deitel and Deitel... by jockeys · · Score: 1

    it's not a real CS class! I'm kidding of course. Many of those books weren't textbooks by any stretch, any more than a dictionary or the DSM is a text book: good reference, but not with "lessons" and such. My best CS classes were when the prof used a reference book and wrote their own curricula, rather than a "textbook" and just following the built in lesson plan.

    --

    In Soviet Russia jokes are formulaic and decidedly non-humorous.
    1. Re:If there's no Deitel and Deitel... by h4ck7h3p14n37 · · Score: 1

      I used to call those guys Tweedle Dee and Tweedle Dum. The Deitel and Deitel books are absolutely awful! My introduction to C class used their book and it was a bad joke compared to the definitive text by Kernighan and Richie.

      People should be using the well known texts from accomplished authors.

    2. Re:If there's no Deitel and Deitel... by jockeys · · Score: 1

      We always pronounced it out loud as "DEEdle and DIEdle" (rhymes with "beadle" and "bridle") with the same general idea you had e.g. Tweedledee and Tweedledum.

      --

      In Soviet Russia jokes are formulaic and decidedly non-humorous.
    3. Re:If there's no Deitel and Deitel... by Anonymous Coward · · Score: 0

      The average "For Dummies" book is better written than Deitel and Deitel. No joke.

  10. Textbooks are for studen loans in HS the gov is pa by Joe_Dragon · · Score: 1

    Textbooks are for student loans in HS the gov is paying most of the costs so they can say no to textbook BS.

  11. Textbooks are a waste by Anonymous Coward · · Score: 0

    Let me tell you about one of the best classes I had in high school... a public high school though it seems looking back that I received a really good education... AP US History with Mr Fox. Mr Fox started the first class of the year by dutifully issuing his students the proscribed text books. Then he instructed us to put them in our lockers and never touch them until we returned them on the last day of the school year. Over the course of the year Mr Fox relied on humor filled lecture denser in material than any class I had in an Ivy League college classroom, a variety of hand outs including: newspaper clippings, maps, speeches, a few data tables and bonus readings... Mr Fox had spent a career picking up small volume works including one that stick in my mind which was titled something like the "25 Greatest Supreme Court Rulings 1798-1948" which included the text of select rulings and a short commentary on it by various writers including I think later Supreme Court Judges. I later tutored College US History having never taken another History course though I have read copiously including "The Rise of Theodore Roosevelt" which was recommended to me by Mr Fox shortly before his death.

    Textbooks are designed to appeal to school boards. High School textbooks have a roughly 9th grade reading level, are filled with glossy pictures promoting popular ideas. They are far from primary sources and many have an agenda beyond being sold.

    Don't get me wrong I am not suggesting The Art of Programming or the rants of Linus Torvalds would be useful in the classroom but select articles from Wikipedia (almost a primary source for programming), various PEP documents, many tutorials online free eBooks and carefully curated statements by big names in computing like Theo de Raadt and Steve Wozniak probably are.

    Here's my suggestion to teachers of all subjects: Start a folder and fill it with clippings relevant to your area of instruction. Seek out other teachers who teach similar courses and raid (photocopy) their folders (the best teachers in my experience all have one). Moderate a class discussion board where students can post articles of interest they found helpful. Stop being afraid of Wikipedia. Find a library with back issues of magazines on your topic and photocopy the best articles or even see if they will cull the old articles into the back of your vehicle (you will be pleasantly surprised how many will). And of course save your course work from college with comments on what you found helpful and not.

  12. the intarwebs ruin everything by Thud457 · · Score: 1

    Unfortunately, kids these days just aren't motivated to learn the way we were by a unattended Apple II and a floppy of Strip Poker.

    --

    the preceding comment is my own and in no way reflects the opinion of the Joint Chiefs of Staff

    1. Re:the intarwebs ruin everything by Anonymous Coward · · Score: 0

      Unfortunately, kids these days just aren't motivated to learn the way we were by a unattended Apple II and a floppy of Strip Poker.

      Very few kids are ever motivated to learn like that. Past or present. Nothing has changed. Don't act like there is something wrong with all kids because they don't behave exactly how you did, and/or have the same interests.

  13. This is CS it's not medecine by Anonymous Coward · · Score: 0

    I mean in other field things dont much change, new things are added but older things dont necessarily change. In CS what you learned about in your frist year might be obsolete before you finish your entire course. whats the use. I mean when I did my CS course at collegue we had textbox, where are those now? Down the drain.. nothing in these is much relevant now. I think its stupid to have textbook in CS as the web is a far better source of information. IMO it should be part of the course to learn how to better search the web. Textbook are in contracdiction to this.

  14. This by Anonymous Coward · · Score: 0

    We need to always make the distinction between computer science and programming. Computer science != programming, and most CS students learn to program (mostly, already have learned to program) on their own in order to explicate what's needed in their courses.

  15. Too Fast by freeze128 · · Score: 1

    I imagine that the content of computer science changes too fast to be worth publishing a book. By the time the authors have finished the book, and it gets published, there is some new topic that needs to be covered, and other methods get disused. How about Math teachers, or History teachers? Do they still use textbooks?

  16. No book needed by Anonymous Coward · · Score: 0

    There are two topics that often get mixed together: computer science and computer programming. For computer science, you'll likely want mathematics books. For computer programming, you'll likely just want Google for syntax. The reality is that by the time most computer programming books get published, they're already (somewhat) out of date. For true computer science, the principals haven't changed much in decades and good, advanced mathematics books will go a long way.

  17. Companies want JavaScript programmers... by Anonymous Coward · · Score: 0

    Before you call yourself a JavaScript programmer, read the first volume of "You Don't Know JS" (free ebook). Most people who use a JavaScript framework know only enough JavaScript, say, "Hello, World," to make the framework work but not enough to understand and solve problems when the framework doesn't behave.

    1. Re: Companies want JavaScript programmers... by Anonymous Coward · · Score: 0

      Creimer affiliate spam. Mod down.

  18. It's not necessary by jandrese · · Score: 1

    Hands on experience beats textbooks pretty much every time. If your school has a computer lab (AKA you are in a first world country) then there isn't much point studying from the book instead of just doing it yourself and learning how it works. Later on when you start talking about making inductive proofs and the like then the books become necessary again, but for high school CS there is basically nothing that isn't best done directly on the computer.

    --

    I read the internet for the articles.
  19. As a *computer applications* teacher I use a book by Anonymous Coward · · Score: 0

    I teach Computer Applications at a Middle School. A B or better allows the class to substitute for the same class taught at the high school. This allows interested students the opportunity to start the High School in more advanced classes. It also means that my class may be the last computer application class that my students will take until they start college. I also teach a basic, intro to robotics class.

    The computer applications class is focused on word processing, spreadsheets, and Photoshop. The reason Photoshop is taught in this class is because some of the High School courses need the students to be proficient in Photoshop. It is a bit of a problem because there are no Middle School Photoshop books. Due to this I use the High School Photoshop text that is out of the Higher Ed catalogue.

    A large part of using a text is that it helps sequence the class. The other reason is that it makes it clear to students what we are doing. For word processing and spreadsheets it provides lesson material and data. As an example, I will typically provide the students with most of the typing done in spreadsheet assignments; however, they will need to put in the numbers. I do this in order to work with them on ten-key skills.

    I do not use the click-here click-here books. I consider them to be worthless. I prefer instructions in the form of "create a two inch top margin." I then frequently modify the lesson in the text. So, why use the book at all, because it provides sequence, instruction, and content in my applications classes.

    In Robotics I use a lot less book and rely on a sequence of worksheets. We use th eEV-3, so the programming is very block based. For those who do not know what the EV-3 environment looks like, if you have used the, Scratch based, Hour of Code, then you are well prepared for the EV-3 environment.

    I also use the Hour of Code material for extension in my Computer II class (the second semester of Computer Applications). I am interested in the Code.org Middle School curriculum package. However, my district has made it very clear that the Middle School Computer I and Computer II classes will be entirely about applications. At one point Hour of Code was blocked for a couple of years because the school felt that it was distracting from the purpose of the class, which is applications.

    Before you say I am taking some easy way out, My class is considered the most advanced class in the area, covering five districts. There is a parent waiting list to get students into my class as opposed to the other teacher's Apps class. I am consistently reminded of this, by the administration, when I want to add more material to my course. If the student fails my class (a C or below) they will have to retake it at the High School. The High School class covers less, not more, content.

  20. If they're not using SICP by Anonymous Coward · · Score: 0

    Then they ain't learnin' shit. /old

  21. Comment removed by account_deleted · · Score: 0

    Comment removed based on user account deletion

  22. Teach about INVASION of the JUDENoidz by Anonymous Coward · · Score: 0

    Jews believe this of all they call goyim/gentiles (any non-jew): Jews = biggest racists of all (for which they "jew guilt" you for no less! They're hypocrites known as thieves all thru history or were Argentines in the 1940 under Perrone, Spanish inquistion & Spain 1492 (Christopher Columbus the jew https://duckduckgo.com/?q=%22C... sailed to the US for them to create it), France (1306), Egypt (despoiled/robbed by jews), Arabs (pre & post 1948), England (1330 Edward longshanks), Romans under titus, Russia pogroms and Germany who got rid of them from their nations nazi german's too? No. Driven into DESERTS ages ago! Don't wonder why after all those exilings above. Should anyone doubt any of this see Jacob Javits' crony Rosenthal spill the beans on it https://www.youtube.com/watch?v=D4zMVZ8HnFI/ where he called all Christianity fools for helping Israel and the biggest scam of all time per their beliefs below from their Talmud. This is the province of the synagogue of Satan (Khazar/Pharisees whom Jesus Christ himself kicked to the curb out of the temple & they killed him for it. Jeremiah did the same to them also + the Essenes could not stand them either breaking away from the pharisee corruption):

    Maria Abramovic satanist spirit cooker pal of Hillary Clinton the Voodoo queen is a jew https://www.google.com/search?...

    Just like Hillary Clinton's mentor Saul Alinsky author of rules for radicals book dedicated to Lucifer

    "Most Jews do not like to admit it, but our god is Lucifer â" so I wasnâ(TM)t lying â" and we are his chosen people. Lucifer is very much aliveâ Harold Rosenthal http://www.thetruthseeker.co.u...

    Jewish rabbi openly admits to satan worship use white children's blood they kill for passover bread, infiltrating and subverting the catholic church, creating the Jesuit order https://www.youtube.com/watch?... and https://www.youtube.com/watch?...

    Barbara Spectre, a jew, tells everyone it's jews orchestrating the muslim migrant problem in Europe https://www.youtube.com/watch?v=MFE0qAiofMQ/ . No migrant raping of women in Poland. Tons in Sweden. Do the math. Use common-sense. This is to get muslims and other goyim/gentiles to wipe one another out as incompatible cultures that will clash and always have.

    Rabbi A. Finkelstein ADMITS their greatest enemies are ARABS and WHITES (blacks too) whom they wish to kill one another in a 'theater of war' which they find AMUSING https://www.youtube.com/watch?...

    Finkelstein also admits JEWS DID 9/11 https://www.youtube.com/watch?... profiting by it (and that 3,000 jews employed there did not show up for work that day knowing about it beforehand).

    Finkelstein also admits JEWS are going to destroy the U.S. Dollar and dumping it for other world currencies and gold to destroy the United States.

    George Soros who funds groups to create division in the USA?? A jew. One who sold his own jew people into death for the nazis.

    Zucker now FIRED @ CNN is another frying publicly for lying about "russians" and John Bonifield a producer @ CNN said it is bs. Van Jones did also.

    Bernie Madoff (who made off with everyone's money, especially construction union pensions) shows the thieving nature of the JUDEN!

    Eric Schmidt had to step down @ JEWgle (a jew).

  23. That's a load of bullshit by Anonymous Coward · · Score: 0

    If they want to teach computer science (and not software development or programming) a text on abstract algebra or discrete mathematics is likely going to help more than anything with "computer" in the title.

    Don't start with this holier-than-thou not-a-true-Scottsman BULLSHIT.

    We're talking about a high school course. We're talking about a world that has moved-on from MS-DOS and the the obscure (and very dead, and yes, IRRELEVANT) consumer operating systems that came before it. We're not talking about the old world where you had to fit your program and data structures into 64k.

    Abstract algebra and discrete mathematics have their place, but to imply that it's useful or even necessary at a high school level is blind elitism. That suggestion says that you don't actually want to teach these students computer science. It says you want to redefine what you think is useful, and lord over them with your superior knowledge.

    1. Re:That's a load of bullshit by Anonymous Coward · · Score: 0

      Computer science is math numbnuts.

      It is not elitism, it is fact. It is a branch of mathematics.

      Your screed just shows your ignorance. The foundation of CS has never and will never change.

  24. Book is necessary to a degree... by TemporalBeing · · Score: 1

    I'd highly suggest some kind of book.

    When I did programming classes in high school the teacher used a book specific to each language we were taught. We didn't take them home; they stayed in the classroom. The books were most useful for assignments, but the reading material was good too. The teacher's background was Mathematics and teaching; and he did fairly well. But what he brought most to the table was outside the book - discipline as we were also graded on comments, explaining what it did, and more than just the basics of the assignments; even if the program didn't work or failed, you could still do okay if you could explain what you were doing and had it all commented.

    So yes - a book and non-book materials go hand-in-hand.

    And at that level you basically cannot be doing the language du jour - you have to stick with time honored languages to keep year-to-year work easy. The teacher does not have the time to rewrite the curriculum every 6 months for whatever new hotness is out there. So sticking with C++, Python, and a couple others that have been around for a very long time is much more preferable than trying to keep up with all the different JS frameworks (Node, React, etc) or whatever else is the latest fancy of the CS departments.

    --
    Truth is like the sun. You can shut it out for a time, but it ain't goin' away. - Elvis Presley (source: imdb.com)
  25. self-documenting by bugs2squash · · Score: 1

    The lack of a textbook is intentional, to instill a general hatred for documenting any code. All the explanation they will need is in the comments.

    --
    Nullius in verba
  26. Comment removed by account_deleted · · Score: 2

    Comment removed based on user account deletion

  27. We're debating the value of books? by Anonymous Coward · · Score: 0

    "teachers being recruited to teach Computer Science even if they don't have a CS background"

    I wonder if they also have English teachers who don't know how to read and write.

  28. Looks like retard APK is mad by Anonymous Coward · · Score: 0

    Looks like that retard Alexander Peter Kowalski is mad.
    His antisemitic rants keep getting modded down so he just keeps spamming them.
    He must be mad that his work can't be defended.
    Just remember when dealing with APK always use facts, logic, and especially math as he doesn't understand them and will go full retard when called out.

  29. thoughts from an AP CS A teacher by reiscw · · Score: 1

    There are now two AP courses for Computer Science. The first is Computer Science A, which is essentially CS 1 taught in Java. I've had students go directly from that course into Data Structures/Algorithms at a university and they do fine.

    The other course is a few years old, and it is called AP Computer Science Principles. I haven't taught that course, but I have been to professional development workshops preparing teachers to teach it. Those of you who work in universities may be aware of "general education" courses in computer science that are designed for liberal arts majors. This is basically that course (and at least one liberal arts college in my city offers an equivalent). It's all the rage right now, because there's not a lot of programming (probably less than 25% of the course) so more people are comfortable teaching it. It also lets schools claim that more students are learning CS (which, to an extent, they are).

    As to whether books are necessary in AP Computer Science, I think they help. A well-written introductory textbook explains things in a thorough, logical way, with plenty of examples and exercises. They are not essential, but many students who are interested in the material but have little or no background in programming find a thorough treatment helpful. You can also learn some things you might not have known otherwise by reading a newer text in a common programming language. I recently learned about default methods in interfaces in Java 8, which is something I didn't know before; I learned it because I was reading a newer text on Java for AP Computer Science. I also believe that students interested in engineering or computer science should have the opportunity to learn how to read technical literature which can be somewhat dense.

    That's not to say that they are an expensive waste of money for some students thanks to predatory pricing from textbook publishers.

    One issue with textbooks is that if you use a common one, solutions to every single exercise are available online. You can detect this with some clever things like MOSS (and just eyeballing the code yourself), but it really disrupts a lot of learning. I did my first computer science courses in Pascal/C++ before the internet really took off (mid-90s) and you really had to figure everything out on your own. I think a lot of us teachers write our own exercises to get around this, and the AP examination is a great equalizer to know who has really been learning the material.

  30. Spend your budget on hardware instead. by Anonymous Coward · · Score: 0

    Since the great majority of computer classrooms will immediately sit their students down at a computer, all that's needed is an internet connection to connect the students to the vast reservoirs of free, relevant knowledge on the internet. Computer skills taught in high school range from starcraft and counterstrike (teaching fundamental computer skills like how to use the mouse and keyboard), to typography and word processing, to modifying basic existing programs, all the way to writing small pieces of project software. None of this really requires a textbook, although there are textbooks out there.

  31. Anonymous Cashews... master hacker by Anonymous Coward · · Score: 0

    Anonymous Cashews wrote:

    Creimer had to pick up bottle and cans during his first year of college because his blue-collar family didn't believe in college. He later got a job at the bookstore warehouse and worked 30 hours per week while attending classes. Not bad for someone who graduated from the eighth grade in Special Ed, skipped high school and worked in construction before going to college via the Adult Re-Entry Program. After graduating with an A.A. in General Ed, he started his technical career and later went back to community college to learn Computer Programming, earning a 4.0 GPA and making the president's list while working 60+ hours per week as a lead video game tester and teaching Sunday school.

    This means that Anonymous Cashews must be a master troll/hacker/stalker, however he found so many intimate details about our poor chris I'll never know but he's clearly sitting on more dox than mark zuckerberg.

    1. Re:Anonymous Cashews... master hacker by Anonymous Coward · · Score: 0

      You haven't read the 12K comments that creimer wrote over the years? No wonder you're always surprised that long time Slashdot readers know about creimer.

    2. Re:Anonymous Cashews... master hacker by Anonymous Coward · · Score: 0

      Yet another surprise! An entirely out-of-the-blue anonymous reply from a complete stranger totally unrelated to creimer, inflating creimer's ego!

      No way!

      Not even a team of psychiatrists is going through all your posts, you stupid trolling unfunny mongoloid shit-eating caveman.

    3. Re:Anonymous Cashews... master hacker by Anonymous Coward · · Score: 0

      What's surprising is that you think that the Slashdot community are fools.

    4. Re:Anonymous Cashews... master hacker by Anonymous Coward · · Score: 0

      Hmm, I'm not the one who thought he could retire on the YouTube views he'd get from Slashdot clicks.

    5. Re:Anonymous Cashews... master hacker by Anonymous Coward · · Score: 0

      Creimertards have been pushing that and other made up shit for months.

    6. Re: Anonymous Cashews... master hacker by Anonymous Coward · · Score: 0

      Remember when they made up that whole story about creimer having ebooks up on amazon?

  32. Comment removed by account_deleted · · Score: 0

    Comment removed based on user account deletion