Slashdot Mirror


The President Wants Every Student To Learn CS. How Would That Work? (npr.org)

theodp writes: The very first proposal President Obama put forth in his final State of the Union address Tuesday night for his remaining year in office was "helping students learn to write computer code." While the President wants every student to learn CS, NPR notes that getting a new, complex, technical subject onto the agendas of our public schools is a massive challenge, prompting it to ask, How Would That Work? That Microsoft CEO Satya Nadella attended the SOTU address as Michelle Obama's guest suggests the President is counting on the kindness of tech titans to help make things happen. Microsoft and Obama have worked together to try to get CS in the schools since at least 2006, when Microsoft announced a $1 million donation to NCWIT, which it indicated would facilitate "taking the discussion to a national stage" at a Washington, D.C. Innovation and Diversity Town Hall co-sponsored by the NSF and keynoted by then-Senator Barack Obama. "Most of all, what inspires me about this program [NCWIT] are the prospects of my two daughters," Obama said at the time (video). "I want them to go as far as their dreams may take them. And, unfortunately because of long historic discrimination in the areas of gender, we can't be assured of that."

38 of 317 comments (clear)

  1. How would that work? by jafiwam · · Score: 5, Insightful

    It wouldn't.

    1. Re:How would that work? by AmiMoJo · · Score: 5, Interesting

      When I was 3 years old my pre-school had a programmable toy car. You gave it a list of commands like go forward 1m, turn left, go forward 2m and it executed them. Many years later we got a computer, and the manual told me how to write software in BASIC.

      Without those opportunities to be introduced to programming I might not have studied and eventually done it as a job. That's what introductory classes are for. De-mystify software and give children the basic concepts and skills to pursue it, and an opportunity to see if it interests them.

      It works.

      --
      const int one = 65536; (Silvermoon, Texture.cs)
      SJW, n: "Someone I don't like, and by the way I'm a fuckwit" - AC
    2. Re:How would that work? by JaredOfEuropa · · Score: 4, Insightful

      It doesn't have to. Not in the sense that every kid ends up being a competent coder.

      It is good that kids are exposed to coding and learn some of the rudiments. A few kids may be inspired to take up a career in IT, others may derive some benefit from when they take a job that involves computers, and for others still will simply be part of having a well rounded education. The same can be said for biology, poetry, economics or history, by the way.

      --
      If construction was anything like programming, an incorrectly fitted lock would bring down the entire building...
    3. Re:How would that work? by serviscope_minor · · Score: 5, Informative

      Glad you came here to say that.

      There's this meme here that programming is super special in that only people who naturally gravitate to it with no outside assistance should ever consider it as a career. This is of course completely different from just about every other career ever.

      It's also total rubbish.

      I originally felt drawn to it, and self taught myself a lot. Of course the very reason I had access to those BBC computers is because of one of the first ever attempts to get kids to program at a large scale by providing usable computers to schools via the BBC. In later years I used my dad's laptop (every PC came with qbasic then) and he would often give me advice.

      It's a nice fiction to think I did it all by myself but of course I didn't. I could only become drawn to it and make good on that because of the environment. Without the government assistance and without assistance and equipment from my dad, thing would have been different.

      Then I went to uni and did engineering. Naturally programming was on the course but treated as well as might have been expected. I ended up helping my fellow students because I enjoyed doing that. Thing is some of them who had never programmed before at all picked it up really, really fast given a bit of assistance from me. I fondly remember some late night hacking sessions (one of them nicked some plastic pint glasses which we filled with coffee) doing the open ended bit of the project. Neither of the two I was hacking with had ever coded before.

      --
      SJW n. One who posts facts.
    4. Re:How would that work? by umafuckit · · Score: 2

      It works.

      Yes "it works", but of course "it" isn't introducing children to code. "It" is giving children opportunities to experience many new things and develop interests. You were probably exposed to various other things at school that made little or no impression on you, yet for some of your classmates those same things would have proved transformative and set them on whatever path they are now on. It sounds like I had exactly the same opportunities you did: we had the toy car at school (Big Trak) and there was basic on my Dad's home computer and later on my Amiga. Of course, I did different things with those experiences.

    5. Re:How would that work? by PolygamousRanchKid+ · · Score: 2

      Politicians just simply do not understand what programming is all about . . . they think that it is a simple technical skill like plumbing . . . plumbers can now rightfully attack me, for having not enough understanding of the subtleties of plumbing!

      So, you can teach an average idiot how to write some JavaScript . . . how does he or she deal with deadlocks, lockouts and race conditions . . . ?

      Whoops. Until the politicians understand the fine art of computer programming . . . they should shut their mouths, and stop trying to talking about something that they do not understand.

      --
      Schroedinger's Brexit: The UK is both in and out of the EU at the same time!
    6. Re:How would that work? by mikael · · Score: 2

      You can split it up into several parts: task decomposition, actual coding, testing and refinement.

      Here is what they are teaching in primary schools in the UK:

      http://www.bbc.co.uk/education...

      --
      Vintage computer adverts: http://www.vintageadbrowser.com/computers-and-software-ads
    7. Re:How would that work? by 0100010001010011 · · Score: 2

      I ended up where I am because I learned to code HyperCard on my Mac. I spent hours making animations and other 'stupid' stuff. I never showed it to anyone, it was hacky at best but it set me on a course to being an engineer and using Python/Matlab daily.

    8. Re:How would that work? by Anonymous Coward · · Score: 2, Insightful

      It's one thing to give students an opportunity to learn something they are interested in. It's quite another thing to force everyone to study a subject that they are not interested in. I am all in favor of giving every child the opportunity to explore and learn anything and everything they care about.

      As for programming, opportunities abound. The cheapest home computer is now around $5, and it comes complete with a professional grade programming system. Free courses on programming are ubiqutuous on the internet.

      Anyone claiming not to have been presented the opportunity to get into "computer coding" because the school didn't offer any classes quite obviously doesn't belong into this profession. Because the last thing this profession needs is people who need to be "motiviated" by someone else.

    9. Re:How would that work? by currently_awake · · Score: 3, Insightful

      Computer programming is a labour intensive job that can be done from anywhere. It's a perfect example of a job that is easy to offshore to the third world. I get that the president has to show he's helping keep America on top, but this won't actually do that.

    10. Re:How would that work? by JaredOfEuropa · · Score: 2

      And then there's programming, where you're expected to create algorithms.

      And yet, young kids from all manner of backgrounds manage to make the little turtle move along its prescribed path with a couple of Logo statements. That is programming. Crafting complex, well-formed programs requires a lot of training and experience, but you don't need all that to get started. That was true back when my high school received a roomful of C64s, one clueless math teacher took it upon himself to teach us, and the provided learning material sucked horribly. We can do much better today; a CS course can include some basic computer theory (computer components, what goes on in a CPU, etc), fun programming assignments, and some formal coding subjects like data structures, loops and functions, object orientation, basic algorithms like sorting, etc. None of this is above the level of (senior) high school students.

      Sure, not all kids will like it, but they don't all like math, chemistry or Spanish. That doesn't and shouldn't stop us from teaching these subjects. Make the foundation course compulsory with advanced classes as electives, much like any other subject taught in our schools (in the Netherlands, anyway)

      --
      If construction was anything like programming, an incorrectly fitted lock would bring down the entire building...
    11. Re:How would that work? by AmiMoJo · · Score: 5, Insightful

      I knew this guy, an electrical engineer, who wrote Excel macros. Many of them were quite complex and useful. I'm sure he couldn't even tell you what a race condition is, let alone fix one, but fortunately such things never came up because, well, it's an Excel macro written in Visual BASIC. Very useful for doing engineering calculations, converting memory dumps into screenshots, even writing front ends for command line apps to make production staff's lives easier and less error prone.

      I'm an accomplished programmer, mainly using lower level stuff like assembler and C, but also high level stuff like C# and Java. I've done bits of Javascript here and there, for various web projects, mostly personal. Fixing things in MediaWiki, implementing an on-line shop with Google Checkout, some fancy little animated flourishes etc. Never once had to fix a deadlock, lockout or race condition. What I did was relatively simple, sure, but still very useful and productive.

      Not everyone has to be a master in their field to be useful. Simply being able to do Excel macros, i.e. to use the tool you have (a computer) more fully to work more productively, is a skill worth having. Teach the basics and people can apply that skill practically, which is more than you can say for a lot of the shit you learn in school.

      --
      const int one = 65536; (Silvermoon, Texture.cs)
      SJW, n: "Someone I don't like, and by the way I'm a fuckwit" - AC
    12. Re:How would that work? by lgw · · Score: 2

      It's one thing to give students an opportunity to learn something they are interested in. It's quite another thing to force everyone to study a subject that they are not interested in.

      Everyone is forced to study history, civics, basic science, math, and so on. It seems find to add "writing code" to that list. Studying coding every year seems like a bit much, but multiple exposures over childhood seems appropriate.

      Remember, all the mindless, repetitive jobs are going to be replaced by robots over the next 20-30 years. If schools are doing their fundamental job of teaching everyone enough skills that they can contribute to society in some needed way, then basic skills in programming and debugging, very simple stuff, is going to be needed more and more.

      Reading and writing was once a niche job skill, needed by only a few specialists. Now most jobs require it. Coding will be the same way - only a few jobs requiring the skills of a professional software developer, just like there are only a few jobs as novelists or technical writers, but some basic understanding of simple automation? The equivalent of basic functional literacy? Yeah, most people will need that.

      --
      Socialism: a lie told by totalitarians and believed by fools.
    13. Re:How would that work? by MightyYar · · Score: 2

      We are throwing billions down the well right this very minute, with almost consensus that our current system is lacking. We spend more than almost any other country on education, measured in both absolute terms and per capita, yet we are almost universally unhappy with our education system.

      But go on, defend the status quo.

      --
      W..w..W - Willy Waterloo washes Warren Wiggins who is washing Waldo Woo.
  2. Some dreams don't count by MikeRT · · Score: 5, Insightful

    "I want them to go as far as their dreams may take them. And, unfortunately because of long historic discrimination in the areas of gender, we can't be assured of that."

    A lot of women also want to be able to be stay at home moms, supported by a husband on a single income. The effect of driving down wages in our field means it's that much harder for any woman married to a man in our field to have that option. What our economic policies mean for a lot of women in general is that should they want to give up their career, they can't, because cheap labor is more important than economic flexibility.

    1. Re:Some dreams don't count by mwvdlee · · Score: 5, Insightful

      The percentage of women in IT (about 26%) is higher than the percentage of women in politics (about 22%).
      Remember that next time a politician claims "a long historic discrimination in the areas of gender".

      --
      Slashdot social media options: AIM, ICQ, Yahoo, Jabber and Mobile Text. Why no MySpace?
    2. Re:Some dreams don't count by AthanasiusKircher · · Score: 5, Interesting

      "I want them to go as far as their dreams may take them. And, unfortunately because of long historic discrimination in the areas of gender, we can't be assured of that."

      Can we all just mod the Summary as "-1 Troll"?

      I'm absolutely serious. There are clearly lots of stories posted on Slashdot which seem designed to create flamewars, but this one is incredibly blatant. Rather than just discussing a current speech of Obama and his ideas, we get a final sentence which appears to be referencing gender discrimination in IT, which the OP obviously knows will rile people up here.

      Except there are number of problematic things there:

      (1) The link is to a speech Obama gave in 2006. Why is that news?

      (2) The speech is given before a diversity advocacy organization (NCWIT = National Center for Women & Information Technology), and if you listen to the context of the speech, that's clearly why he brings it up. Any politician invited to give a speech at an event like that obviously is going to try to find a way to complement the work the organization is doing.

      (3) If you listen to the context of the quotation, it's actually not about IT. He mentions a number of different disciplines and a number of career paths, mostly not in IT. So, TFS is deliberately distorting the quotation to rile up Slashdot.

      (4) Note the placement of the quotation -- it's the last thing in TFS, guaranteed to be the last thing people read before posting. So, you read the beginning and all the crappy flamewars about Obama and how he doesn't understand IT or whatever start coming up, but then you get to the last sentence and you're clearly supposed to be outraged and ready to start flaming.

      JUST STOP IT. Can we skip all the stupid debates over gender and women in IT today? I'm not a big fan of Obama, but if you do want to discuss Obama's recent speech or possible initiatives, can we skip a bunch of crap concerning a speech from a decade ago with a quotation taken out of context??

    3. Re:Some dreams don't count by fahrbot-bot · · Score: 2

      The story is current because Obama just mentioned teaching code in the SOTU.

      And it's News because it's something the Republicans will say "no" to (because "Obama") and that Congress in general (R+D) won't do anything about - oh wait... :-)

      [ Knee-jerkers, notice the smiley. ]

      --
      It must have been something you assimilated. . . .
  3. How to be good at CS by ebonum · · Score: 2

    If you call programming creating Wordpress sites, then fine, everyone can code.

    Otherwise, programming is little more than an IQ test. That means only the top x% have any hope when they start to learn to code of ever being any good at it. I fully support using the Purple Book ( https://mitpress.mit.edu/sicp/ ) for intro to CS. If you can finish it, you rock. You are welcome to keep going. Otherwise: Be happy. You failed fast. Your calling is elsewhere.

  4. Political Pap by BoRegardless · · Score: 2

    It is the same as asking EVERY student to become proficient in Science, Technology, Engineering and Math. I don't know anyone who is proficient in all four.

    Individuals are inclined to one or two things. Trying to force them into doing something they truly are not interested in has always been a failure.

    1. Re:Political Pap by Applehu+Akbar · · Score: 2

      "It is the same as asking EVERY student to become proficient in Science, Technology, Engineering and Math. I don't know anyone who is proficient in all four."

      But what we do need to teach, desperately, is respect and appreciation for why science and its applications are important to us. Don't teach code with the aim of making everybody a programmer, but teach what code can do. Those who have an interest in CS will be motivated to get educated further on the topic,while the rest of the students will have a better understanding of how programmed devices fir into their everyday lives.

      Now do this with chemistry, physics and biology. Then perhaps we will have a populace that reacts to science and tech news with something other than gibbering hysteria.

  5. It won't, and note microsoft is always involved by drinkypoo · · Score: 2

    History shows us that if Microsoft is involved, education will be harmed, and Microsoft will get money somehow, even if not getting paid directly. Do not ignore the lessons of history. Corporations don't change their stripes unless forced, and Microsoft was explicitly not punished in any way after the DoJ found they were Guilty of illegally abusing their monopoly position... and basically every possible kind of anticompetitive behavior.

    Some people are never going to be good programmers. That's okay, because we don't need everyone to be a programmer. We don't actually need that many of them; we already have massive duplication of effort right now, and don't need more. We already have massive joblessness in the sector right now, and don't need more of that either.

    It would be valuable to teach "everyone" more computer skills, since they are only becoming more common, and I personally believe that it would be valuable to teach them all a little programming. Don't try to make everyone into a programmer, computer scientist, whatever the goal is. But it is senseless for us to continually integrate computing further and further into our lives without coming to a greater understanding of it. A little programming knowledge will give people an appreciation of the complexity of the systems they're currently casually throwing their personal information into the void with.

    --
    "You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
    1. Re:It won't, and note microsoft is always involved by 0100010001010011 · · Score: 2

      Don't try to make everyone into a programmer, computer scientist, whatever the goal is.

      Because teaching kids Math is trying to force them to be mathematicians? Or teaching them biology is trying to make them a biologist?

      The point is to expose kids to what is out there so that later on they can choose a career path.

      Half of what CS and IT is now doesn't even require a college degree it should be an apprenticeship style learning program starting at 14-15.

    2. Re:It won't, and note microsoft is always involved by 0100010001010011 · · Score: 2

      There is no reason a senior in highschool that started learning CS in middle school couldn't make that. You don't throw them straight into OSes or Compilers. You have to start with the basics.

      I learned to code and go on to learn that in college because I had HyperCard. I didn't understand why #FFFFFF was the color it was on our Commodore 64s at school, but years later when I was shown how to convert binary to hex it all clicked.

      And now when I'm watching CAN datamessages flying by in CANape/CANalyzer I can look at the data signal mask and know what is going on.

      I have no clue why Slashdot thinks we're going to be teaching senior level college concepts to middle schoolers. We're going to be introducing them to the concepts. And just because someone has a cell phone doesn't mean they have access to a Python prompt.

  6. This Will Never Happen by StormReaver · · Score: 5, Insightful

    Enough people fail to grasp the concept of a variable that I can confidently predict that the "anyone can code" mentality will hit an unassailable obstacle and be abandoned. The only question is how long it will take for this particular neurosis to metastasise and die.

  7. I want everyone to play Counter Strike... by MindPrison · · Score: 3, Funny

    ...well, that's how I read it the first time.

    --
    What this world is coming to - is for you and me to decide.
  8. It would work like every other subject by Opportunist · · Score: 3, Insightful

    Some would be interested in it and learn to program. The rest will crib the homework from them. Come tests, teachers will game the system to produce the required outcome to still get government money.

    --
    We used to have a Bill of Rights. Now, with the rights gone, all we have left is the bill.
  9. Umm... by EmeraldBot · · Score: 2

    suggests the President is counting on the kindness of tech titans to help make things happen.

    Is the government seriously incapable of putting together a computer science curriculum???

    And, unfortunately because of long historic discrimination in the areas of gender, we can't be assured of that.

    He has the daughters of a president. They will be well into the upper 5% or 1%, will have connections any other person could only dream of, and are almost guaranteed an easy life into doing whatever it is they want to do. You are saying these ladies are worse off than a boy from a smalltown like Stillwater, Pennsylvania, who will earn maybe $50,000 per year as a construction worker? Seriously?

    There is indeed something widely missing from American public schools, and that we should certainly be adding. It's called logic. To my knowledge, most American public schools don't even teach it at all, and even most higher level schools skip right over. THAT'S what all this effort should be directed at, and it pains me every single time I hear a story about computer science in school and not that.

    --
    "Set a man a fire, he'll be warm for the rest of the night. Set a man afire, he'll be warm for the rest of his life."
  10. Schools have regressed terribly by BenJeremy · · Score: 2

    When I went to school, in the mid-80s, we were taught BASIC and Pascal, which was a good springboard to languages like C. Today, we have the benefit of more mature, object-oriented languages like Java which are great for educational use, but instead, my son's high school teaches with App Inventor, which is like teaching shop class with LEGOs.

    We also have the benefit of great, now classic, books like the Gang Of Four's Design Patterns. We should be teaching kids something useful out of high school, yet we no longer do.

    I'm mentoring on my son's Robotics Team, and find myself having to teach them Java programming from the ground up. I suppose it is good for them, but I'm not a teacher, I'm an engineer. Still, we are managing, and they are learning. I'd prefer it if a professional instructor had prepared them better, though.

    Shame on educators for having gone this route.

  11. CS != Computer Programming by Dr.+Winston+O'Boogie · · Score: 2

    There seems to be a fundamental misconception in this entire dialog between "Computer Science" (as define by the ACM/academic folks and their curriculums) and learning the skills needed to be useful as a Software Engineer in industry. These are very different things. The proponents should be clear exactly what it is they think all kids should be learning: do we want to train them to do research in Computer Science, or do we want them to get a more vocational education for the vast number of non-academic jobs?

  12. How about the US starts with ... sex! by DaveyJJ · · Score: 3, Insightful

    Instead of focus on CS, how about we start with something more fundamental ... a science-based and medically accurate, single term, comprehensive, across-the-nation, practical sex education course instead. That'd solve more social problems in the US than teaching a single term of CS. Lower rates of teen pregnancy, lower rates of STDs, healthier relationships, better understanding of the range of normal sexuality, etc. Despite the abstinence-only crap being taught in so many districts, the false info floating around about how one can get pregnant, and the fear-mongering, patriarchal religious nut sacks who equate teens who have had sex with used chewing gum and who think women should have no say in their sexuality, 97% of the population lose their virginity before they hit the age of 20. Maybe we should make sure people know about what the hell they are doing that before teaching CS?

    --
    DaveyJJ
  13. Everyone should know some chemistry and psychology by Theovon · · Score: 2

    CS is a subject that can be taught as well any other subject. We don’t expect everyone to become an expert in biology, but they should be familiar with the basics. So we can apply this to CS.

  14. Cultures and time zones by tepples · · Score: 2

    Computer programming is a labour intensive job that can be done from anywhere.

    With a few provisos. First, the cultures need to match closely enough to minimize loss of information when communicating requirements. Second, the time zones need to match closely enough for clarifications and change requests to be communicated in a timely manner. Third, the field of use needs to be one where sending information out of country does not pose an unacceptable privacy risk.

    1. Re:Cultures and time zones by Hognoxious · · Score: 2

      First, the cultures need to match closely enough to minimize loss of information when communicating requirements.

      valid8 number is nummerical is not in state ment of needfuls increase in scope will cost xtras

      Second, the time zones need to match closely enough for clarifications and change requests to be communicated in a timely manner.

      Bof. If they won't work nights there's plenty of others.

      Third, the field of use needs to be one where sending information out of country does not pose an unacceptable privacy risk.

      Whose privacy? Whose risk?

      I get what you're saying but those things added together and multiplied by the PHBs' quarterly bonus squared don't outweigh "cheap".

      --
      Confucius say, "Find worm in apple - bad. Find half a worm - worse."
  15. They prioritize diversity candidates. by sethstorm · · Score: 2

    Given current policy, they would make sure that only "sufficiently diverse" people would benefit. They wouldn't want any white males to have any chance of succeeding over a diversity candidate.

    If they really wanted more people in CS, they would kill offshoring and guest worker programs with fire, from orbit. More individuals would be motivated to complete a program with a higher chance of an actual career.

    --
    Twitter supports and protects racists - by smearing their critics with the "Hate Speech" label.
  16. Comp Sci requires good Math skills by mx+b · · Score: 2

    That's what introductory classes are for. De-mystify software and give children the basic concepts and skills to pursue it, and an opportunity to see if it interests them.

    Completely agree. Computer science is not out of reach of most students, but it has to be introduced in proper context.

    I think what many people are missing in this "teach compsci!" movement is that a firm understanding of computer science requires a very solid basis in logic and abstract mathematics. Guess what we don't teach in high school? (as far as I know; it wasn't part of my school, and I never see it mentioned in anything I've read about common core, etc.): Basic propositional logic and symbolic logic. Number theory and discrete mathematics. Abstract algebra!! Abstract algebra, at least the basics of groups, is not difficult and out of reach -- we should totally be teaching high schoolers about groups, which awakens the ability to abstract and see patterns, which is fundamentally what programming (and really all of comp sci) is all about.

    I'm not as concerned about making compsci part of the high school curriculum as much as making real mathematics part of the curriculum. With a solid foundation in basic logic and mathematics, you open up the ability to pick up pretty much any technical book, and read it and understand it. You can go anywhere with that foundation -- computer science, but also engineering, physics, etc.

  17. Who does this benefit? by Dcnjoe60 · · Score: 2

    The failure of this plan is relying on corporations like Microsoft to do it. Corporations do things that are best for their shareholder's interests. The government and government run schools, on the other hand are for the public interest. While there may be some overlap between the two interests, most often they are not and relying on corporations to come up with curriculum and teaching methods is bound to fail.

    For Microsoft and the other corporations involved in this, the students and schools are customers. It is reasonable to expect that Microsoft will push their OS, their programming platform, their web platform, etc., even if it isn't in the best interest of the country as a whole. Why? Because first and foremost, their goal is to maximize their shareholder's equity.

    A more neutral approach to this would be to rely on colleges and universities to come up with a recommendation. Obviously, it would need to be coordinated, otherwise, you will have as many opinions as their are participants.

    And finally, the question must be asked -- "In the future, will what is being being taught to code today be relevant?" If this were put in place in the 1980s, everybody would have been taught COBOL and FORTRAN. How useful would those skills have been by 2000? Teaching to code is more than learning a language, it is learning to think logically. It is learning to plan. It is learning to question. All of those skills can be taught without programming and are more useful in society than only being taught for programming.

    If you want future adults who can code what they are told to code, teach programming. If you want future adults who can think for themselves, teach philosophy -- that way, there will be somebody to tell the coders what to code. There is a reason that parents who are in the 1% send their kids to elite schools that teach philosophy and other humanities along with core subjects. They are raising their kids to be leaders in the future. Sure, they also teach computer programming, for those who are interested, but not for those who are not. After all, in the future, if we all have to program our devices to get them to do what we want, then that is a step backward. That's fine for enthusiasts, but for most of society, it will become a skill as useful as in the past requiring everyone to take Home Ec or Shop class.

  18. Small bias-motivated rudenesses by tepples · · Score: 2

    I am all for giving women equal opportunity to enter Computer Science but beyond that I see no advantage. Why are we forcing people into careers that they do not want to do

    Perhaps it's to change the underlying culture that makes people in groups with a history of systemic disadvantage "not want to do" certain jobs. There could be a background level of small bias-motivated rudenesses that build up over time.