We are approaching the end of the semester! I do not have plans for next semester laid out yet, but current plans are to keep the same time/place. Computer programming will be mostly through the book, so we will have to imagine something new together – maybe do a small JavaScript-based video game, or do some project-oriented JavaScript. Electronics will focus on power, motors, and probably audio. Calculus will go into more depth on the topics we have covered so far. Anyway, for this week:
Computer Programming
We have reached the point in computer programming which requires a lot of abstract thought. I see that some of you are struggling with the concept of functions. First of all, functions have a very specific syntax. You need to be sure you know how how it works. You need to understand the role of parameters, local variables, and return values.
Some people are confused by the stack. Remember that computers are stupid. Conceptually it is fairly simple – every time you call a function it gets its own scope with its own set of local variables, and when it is done it has to “return” the place that it was called from. However, when the JavaScript language implements this, it has to be very specific about how it happens. That is where the stack comes in. The stack is *how* JavaScript implements giving functions their own scope of local variables, and *how* JavaScript knows where to go back to. As a programmer, you will never directly access the stack – that is merely so that you know what JavaScript is doing to enable the magical ability to call functions and return to where you were when it is done. Knowing how it is implemented will be important in the next chapter when we do some more advanced things with it.
Remember that this is the second week to go over chapter 11. If you are struggling you should review chapter 10 as well. Remember, I am available for email consultation if you need it! The Section 3 assignment will be due on November 16th.
Electronics
Today we introduced the Arduino. Be sure to download the Arduino environment and the USB drivers to do your homework. We are not going to be spending much time on the Arduino as it is more programming than electronics, but if you want to know more there are a bunch of links here.
This week we are doing *two* chapters – 12 and 13. They are both very short, and we did most of the projects in class. I will grade your quizzes this week.
Calculus
We started Integrals this week! Remember to finish your quizzes, and then read the first chapter on Integrals.