CS61A_Fall_2020

CS61A, it allows you to see a bigger world and see more possibilities.

Hany and I are going to teach this course as instructors,but we do not really teach this course. There is only two of us and 2000 of you,and it takes much more than our efforts in order to make a good course. A lot of the learning happens when you are working in small groups. And a lot of the teaching happens when you are working in small groups. And for that we have brought together just an amazing group of folks.

And it really is,you know,the only things that limit you are your imagination and your skill set. And the job of this class and subsequent classes is to expand on your skill set,is to give you these really raw basic tools that allow you to think about the nature of computation and how you can solve problems whether that is analyzing images,text,data from the stock market,data from climate change. And our goal is to teach you those very generic skills and help you apply those to solve interesting and important,fun,exciting problems as you move forward in your career.

The best way to learn how to do something is to find somebody who knows more about it than you and have them coach you along a little bit. They will not tell you the answer but they will tell you how to proceed.

I think once you have written down an implementation for a function it can not hurt to stare at it for a little while and see if there is some way to simplify the logic.

Make sure your thinking time is productive thinking time.

But probably most of all,it is like that because not all Python programmers understand higher-order-functions. But it is easy for everybody to understand the magic of a decorator. So for you,it is not magic,but for other people,it may be.

Break out of the habit of trying to sort of remember a solution to your problem,that is not really going to work.

Problem solving and coding is not linear.

Finding the pace that is right for you is much more important than doing what is good for like the average student.

If you think about an option for implementing, and it doesn't work out, I don't think that is a problem as long as you work through that option quickly, notice what is wrong with it, and then move on.

Here is my spiel about life, you know I am not going to tell you how to live your life but I wanted to remind you of a few things.

One is about freedom which is that when you learn how to write software then your skills are going to be in demand.

There is no question about that lots of people are going to work with you.

In fact, there is so many different problems to solve that we can’t solve them all with the people that we have trained to do this kind of thing.

That means that what you decide to work on actually influences what gets built in the world and what you decide to work on will also influence your own experience.

I think like I’ve known a lot of people now who in the tech industry and the ones who make the most money are not the ones that seem most fulfilled or most happy to me.

The ones that seem like they’re very comfortable with their life usually have found something that they’re good at and something they’re enjoy and it also happens to be something that matters to the world in some way.

You know when I say freedom I mean you can choose what you work on.

You don’t have to take the internship from the company that’s got the flashiest website or the best reputation like there’s lots of cool things to do out there and you should be selective and search for something that is a good fit for you.

When I was getting married, I was a phd student at the time, my mom pulled me aside on my wedding day and said John I want to give you some advice and I was like oh great she’s going to like tell me to listen to my wife or whatever.

But she didn’t she said only two words that have stuck with me for a long time she said don’t compare that’s all and then she was like okay you can go back to doing whatever you’re doing.

And at the time this was very hard for me to process because I was in a university which is all about comparing people based on like what their exam score was.

And you know it turns out that out there in the world there are no exams that everybody takes that are standardized anymore.

All that matters is what you go and get done on your own particular path and so comparing yourselves to other people becomes meaningless rapidly as what really matters is what you can do yourself like what you’re capable of and what you bother to do and how you choose to spend your time.

But it just like it took years of this two-word phrase don’t compare to marinate inside of me and for me to realize that my self-worth really has nothing to do with what other people can do and whether I can do it better than them or worse than them.

And it has everything to do with you know what I’ve done and what I am gonna do next and how I spend my time and better myself and I should just like focus on improving myself and forget about what everybody else is doing.

So you’re gonna go take a final and a bunch of other people gonna take this final exam too but who cares this course is not graded on a curve.

It’s just you doing your best work and so I do hope you prepare I do hope you get some good sleep and all of that but at the same time I don’t think you need to worry about the histogram and how your friends doing just help each other out and focus on yourself in the end.