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

Adam
6 min readMay 5, 2024

--

Photo by Jeremy Huang on Unsplash

If you are following my journey thus far then you know that I got accepted into Code in Place, 2024, and this is the second week of this amazing learning festival; so let’s dive in and see what the second week has to offer :D

An image showcasing topics for the second week at code in place; Image source: Code in Place Website, Screenshot by: Author himself.

What was the second week like?

I loved it. 2nd week was harder than the 1st week, yet more fun because of the challenge it presented, which I will get more into detail about the challenges in a second, yet for now I want to talk about the highlight of the second week for me and that is the ability to work with 2 other individuals on a coding problem as a small team. Spoiler alert! they were amazing to work with!
I liked working with 2 bright students who added value to my base knowledge of computer science and also enriched my thought process by bouncing ideas of each other to come up with a solution. And let me tell you, if software engineering is like this in an office setting with a team working on a project, then I can not wait to do that on a daily basis :)

What did I learn in the second week?

All learning was related to the Art of Programing, and how you can write code that others can understand, and also how to write dynamic solutions that are flexible and work in many forms instead of one, and fullfill many edge cases. Also, we had our first encounter with algorithms as students where we did a problem called MidPoint Karel, which is focused on how to create an efficient solution for the robot Karel to know the size of the world he is at, and then place a beeper in the middle of that world.
By the way, you can attempt solving this problem on the Code in Place Public Site yourself, if you are up for a challenge! And speaking of which, this was the challenging part in this week, and also the most fun.

Photo by Austin Distel on Unsplash

Section leader weekly meeting for week 2:

In this week meeting, we did not go over the material provided for the week. Yet our section leader had us jump straight into solving the problem presented for this week.
We were divided as students into small groups, then we worked on the challenge problem at hand together! And I loved that.
Also, I noticed that my code started to look much cleaner, as I started making my own decisions about what code I want to implement and what type of helper functions I want to take advantage of to help me solving the problems at hand.
Furthermore; instead of using the provided IDE, instead I’m using Sublime Text, my favorite text editor to edit the code with.
Here is an image of how that might looks like, and again this is not all of the code, and I do that for the sake of keeping the integrity of code in place challenges intact, so other students can enjoy them like I do.

An image showcasing code from one of the challenges at CIP, using Sublime Text, source: Author himself.

And here is the code snippet in case you want to read it, or hear it verbally through the Ai reader of medium, in case you have difficulty seeing the visual aspects of this story or blog.

def main():
# have karel place a beeper at the start of the world.
if front_is_clear():
put_beeper()
while front_is_clear():
move()

# have Karel place a beeper at the end of the world.
if front_is_blocked():
put_beeper()
turn_oppsite_side()

# have Karel go to the edge of the world and check if there is a beeper, he would pickup that beeper, and the turn around and place one in front of the beeeper that was in place already.
while front_is_clear():
move()
if beepers_present():
pick_beeper()
turn_oppsite_side()
if no_beepers_present():
move()
put_beeper()

As I said last week, I have an interview coming up soon, therefore those challenges were a great help, and also my section leader, has been kind enough to meet with us students outside of the weekly meeting hours to do 1 on 1 sessions to address problems on an individual level.
This has been a great path way for me to see fast improvement on my code logic, which again I have highlighted the main issue with trying to learn online in the past, and how it can be solved, which Code in Place managed to solve, by having us meet with section leaders on a weekly basis.

Photo by Florian van Duyn on Unsplash

My final thoughts on week 2 of code in place:

I have learned a lot in the span of those two weeks. I have much maturity in terms of how I write code now, and I grew more confident in tackling hard challenges that are not programing related, such as tinkering with M1 MacBooks to downgrade the Mac OS version for example, or how to connect Git and Github to talk to each other, and have them connect online using the terminal and bash commands only.

Those type of things were scary a couple of weeks ago, even though I sort of had an idea of how to do them, but the fear of breaking things stopped me from going fully into them.
While now because of the challenges that Code in Place presented, I started to embrace the tougher challenges and face them head on! which brings me to my final thoughts of this week:

Code in place is great overall, and the second week was amazing and dare I say better than the first week plus it is more fun!
Everyone is learning at code in place, the staff as well as students, and the feedback given to the staff by students is being implemented quickly, which means we as students are seeing improvements on a daily basis.
Just like Dr. Chris Peach said: “You code in place students are experiencing the cutting edge of learning technology everyday” and that can not be any closer to the truth, as I have seen that first hand as a student myself.
Therefore, thank you Code in Place, and thank you dear reader for taking the time to read all of this.

Please, do not forget to follow me on medium and send few claps my way, because that makes me happy. And with that being said, I will see you next week :)

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, since it makes me happy.
Thank you for reading, and have a lovely day.

--

--