First Week of Code In Place 2024, aka Stanford’s CS106A

Adam
6 min readApr 29, 2024

--

Photo by Allen Gong on Unsplash

So I got accepted into Code in Place aka Stanford’s CS106A, again, but this time for the year 2024. My goal is to finish it and stick through it till the very end, since my health stopped me from finishing my first attempt. As the chronic illness stood in the way, sadly.

Photo by Christopher Gower on Unsplash

What was the first week like?

The first week was great! At the time of writing, I’m half way through the second week already, where I’m doing an algorithm challenge, which I will get to in detail, when I write my thoughts about week 2, on that note, let us dive into what I learned from week 1!

Source: Code In Place Website, Screenshot by: Author.

For the first week, we did the welcome lesson and a warm up coding puzzle before week 1 learning session, and then we did few challenges using Karel the Robot, which they were titled: Jigsaw Karel, and Karel’s home, plus the assigned readings for first week.

Before our first section meeting with a section leader, which my section leader is: Siya G, and she is one of the smartest people I met. She is good at explaining how the code works. Which brings me to my next talking point, the section leader weekly meetings.

Photo by Redd F on Unsplash

Section leader meetings:

As I have stated before, the biggest problem with learning how to code online, is the no interaction with some sort of mentorship or the lack of a mentor to begin with! And Code in Place are aware of that; Therefore they solved it by having weekly meetings with a mentor of some sort, since meeting with someone who have the knowledge and experience with coding and programing is vital for the learning experience.

That means you can ask questions and get direct feedback on your code, as it has been the case with me, and that would expedite your learning by 10 folds, and that what I have noticed personally. For example: I got feedback on how to write better comments with my code, and this is how my comments looks like currently:

def main():
"""
- [fixed]bug #1: When reaching the starting position of next row [line 32], the code does not start over, even though Post: condition is the same as the Pre: condition.
- [fixed]bug #2: There is a runtime error at the very end mostly related to [line 26], since it does run at the end and execute but gives a runtime erorr, as Karel tries to run through the wall.
"""
# move-in and put beepers along the way.
while front_is_clear():
put_beeper()
move()
# when Karel faces the wall, he would put one more beeper.
if front_is_blocked():
put_beeper()
# Karel comes back from the very end of the world, to the starting position again.
if beepers_present():
turn_oppsite_side()
while front_is_clear():
move()
# check if Karel can go up to the other [upper] side.
if right_is_clear():
turn_right()
move()
# if Karel route is blocked, and there is no other [upper] side to go to, Karel goes to the end of the world near the wall, as long as the front is clear.
else:
turn_oppsite_side()
while front_is_clear():
move()

Please, keep in mind this code is a snippet from a bigger coding challenge, and for the sake of integrity of the coding challenge, I only shared a small snippet. Also, I learned how to do decomposing with my code, and how to break big problems into smaller pieces and solve them one by one, and when I learned how to do that, it was like having a super power all of the sudden!

Moreover; I have an interview coming up in few months, and I had the chance to talk to my mentor for an hour outside of the section time, and got feedback on my code in general, and also got tips on how to get ready for a coding interviews since my mentor herself did coding interviews recently, which has been very helpful for me as well, so that is 2 for 1 type of deal. Hence having access to a mentor guiding you is vital, and more importantly, attending the section leader sessions is very crucial for your learning, and one of the important aspects in Code in Place.

Photo by Jason Leung on Unsplash

Karel, the robot, and my adventure with him.

Learning to code using Karel is effective as a method of teaching, because I do not have to worry about the Python syntax [at least not yet], and I can focus on how to write code to make the robot do cool things, solve puzzles, and maybe give Karel a brain damage by making him keep hitting the wall, I’m sorry Karel…

I’m surprised that not many schools use Karel, or something similar as a model to teach coding and intro to computer science courses, because it has been very effective from what I have seen with me and other students at Code in Place, and even Stanford students themself who took CS106A just as I’m right now!
I learned so much in terms of how to make my code clean and how to add inline comments, how to break the problems I face into smaller pieces in order to solve them whether they were coding related or not. What I’m trying to say is this has been a wonderful aspect on top of everything Code in Place has to offer.

Photo by Tingey Injury Law Firm on Unsplash

My final thoughts on week 1:

It was great. I learned so much in one week, and I’m super excited for what would week 2 bring to the table, and if you reading this and debating whether to sign up for Code in Place in 2025 or any other year, I would say go for it, as you will learn a lot, and I say it is worth it as well.

If you want to learn how to code and you have no prior knowledge of programing, like me for example, then this is for you! Also, the live session aspect, where you get to have a section leader who would help you along the way and give you personal feedback is a great aspect to have, since you can not find it anywhere else if we are talking about courses online or whatever that might be, and if you found it, then it is not for free, which can be a burden for some, which Code in Place is FREE, so how amazing is that? Well, you tell me!

Photo by Annie Spratt on Unsplash

My thoughts on Code in Place.

Code in Place is too good to be true, yet it is true! It is a not a gimmick course or anything of such fashion. It was made by people whom they love to teach and they love what they do, and they are Chris Peach and Mehran Sahami, they are teaching out of love for teaching and they are not getting paid anything to do Code in Place. Therefore, come and join us in this celebration of learning, I’m sure they will be glad to have you onboard! Moreover, I personally hope to see you on the other side, and who knows, we might meet as students, or perhaps I might be your section leader, either way, I’m sure you and I will have great time learning together!

Note: Everything here is my own opinion. I was not paid nor endorsed to write any of what I wrote. Also, if you like what you are reading and found it useful then follow me and give me few claps, it helps greatly and above all it makes me happy. Thank you for reading, and have a lovely day.

--

--