I am also late, but I have the same struggle, buyskej. I am just starting to teach this course this year on an A/B schedule with 45 minute periods. I decided to modify and choose what I want to cover. I teach about the design process the year before I teach this class, so I pick and choose activities from Unit 1, I am following unit 2 fairly closely right now. After that I am planning on deciding where to go next based on the interests of my students. But, I agree that it cannot all be done on a schedule such as this. For me, it is about choosing which areas to go through quickly, prioritizing the things I want to spend time on, giving my students strict deadlines, and deciding on which units are a must for myself and my students. I am lucky in the fact that I think my district will give me a space for a follow up course the following year to go back through and cover things I didn’t get a chance to this year.
As far as students working ahead, since I am not teaching every single thing in each unit, I choose activities that are optional for my students who finish early. I also utilize those students as my “student helpers” (I have a large class, so this is a huge help too!). Another thing I am doing is taking some of the verbal discussions in the plans and turning them into discussion boards, some of the reflections I am running through seesaw as an online journal. Students are able to go back and reflect/add comments at any time. Given that there are multiple things happening at once (coding/journals/discussion boards/optional activities) it seems, so far, that everyone always has something to do and if they finish all of that, they become my helpers because they have proven that they mastered the material we are working on at that point! Sometimes I let them move ahead, but again, based on where you are at, the new lessons might require some front loading, so that has to be a delicate balance as well.