As an excuse from doing work, I've decided to come blog a little :) I'm not actually sure how many of the students from this batch will see this, but since I couldn't make it for the first lecture, I decided to make it up by sharing some of my thoughts. (some of which are reused from my reflections post - something you all have to do at the end of the semester)
I took CS1101s in my first year and CS3216 the semester after. I followed this up with CVWO in the summer, and eventually did CS3217 in my second year. So all in all, I've pretty much survived everything Prof Ben has to offer, so I think my advice counts for something. Heh.
You've probably heard from most of your seniors how awesome the course is and how it has changed their lives, so I won't repeat that anymore. Instead, I will share some advice/reflections that might not have been covered. Since I wasn't at the first lecture, I might very well repeat some things that have been said, so bear with me.
1. Plan your time well
You have a lot less time than you think you do, so it would do you good to plan your time well. Not only for the sake of this class, but for the sake of your remaining classes as well. It also does not really help that time seems to fly when you're having fun. (well, you should be having fun, otherwise you're really doing something wrong opting for this class)
Prof Ben often tells everyone that sleep is optional. I respectfully disagree, as I love and need my sleep. Do get ample rest when you can, so that when it comes to crunch times before deadlines you can pull accumulate some sleep debt. Fortunately, you will not be working over chinese new year like some of the previous batches. But make no mistake - Time will pretty much zoom by you. Before you know it, your mid term exams would be here, and you'll be done with all your assignments.
As you've already realised, the arms race is real. The class are made up of pretty talented and motivated people. The arms race will probably not get any better. When deadlines approach (the biggest of which is the poster session), some groups would have completed their project and are now adding enhancements, while some may not have anything close to a finished product/have to return to the drawing board. Bear this in mind - this basically means you don't really have the luxury to push everything to the end since your grade is affected by the poster session to a large extent (if i recall correctly).
For stduents coming off CS3217, CS3216 is NOT the same. you're not guaranteed an A if you do well for your individual component. Not only there is no individual component, there is also no curve. The curve is determined by the standard of the projects created by you and your classmates.
2. Take Chances
CS3216 creates an environment that encourage you to take chances. Whether it be starting flame wars, changing assignments, working with external people, or more, the class allows you to do it. if you have a real passion to bring forth a product, don't let the worry of not doing well hold you back. i don't think you can ever have the time/excuse/resources during your school life to go all-in on a project you care for like in this clasee.
prof ben does his best to create this environment by assembling some of the most driven/talented people in school, and brings in lots of interesting people from outside as well. something my classmate taught me last year was that it really doesn't hurt to go speak to people. prof ben proved it too by getting free AWS coupons for the course (i'm not sure if he has told you this story yet, but he probably will)
so went opportunities present themselves to you, do take it. if anything, this, to me, is the most important mindset to have for the course.
3. be realistic
its great to see everyone all full of aspiration right now. at the same time, i'm quite a practical person. as i mentioned earlier, you're really not working with lots of time. as such, i encourage you to be realistic with regards to what you can and are supposed do. for example, if you're someone who has hardly touch programming, dont expect yourself to be able to pick it up within the time frame of the first assignment. your friends from cs3217, soc, engineering who have wowed you so during the show and tell have all been doing it for a while now. remember, you're chosen for this class for your unique skills. work towards honing them.
correspondingly, programmers should not overestimate your design capabilities. make use of each other's strengths, and don't try to be heroes :)
all the best, have lots of fun. looking forward to seeing the great stuff you guys will do!