I firmly believe that C (or perhaps C++)needs to be in the CS curriculum, but I don’t like having it first. The reason for that is rather simple, you can’t do very interesting things with it. C comes with very few standard libraries and writing fairly basic stuff generally takes a lot of code. One of the things I like to have students do fairly early in my CS1 is read in and parse a simple CVS file (no embedded commas in fields) and find things like min, max, average. I can do that with a few lines of Scala that we can write in a few minutes after a month or so. In C, that would take a lot more code and would come much later in the semester. Keeping students’ attention is easier when you can do interesting examples and C makes that challenging.