Showing posts with label what is csc165 really about?. Show all posts
Showing posts with label what is csc165 really about?. Show all posts

Fin???



In less than 30 min, I will be officially done all my assignments for my first year at UFT. And since this will most likely be my last post for this blog, I guess it should be somewhat special.

In my very first post, I talked about what computer science is really about (yup, it is more than just studying computers) and now that I am done csc165, I am quite convinced with this even more.

Computer science is about much more:

It is about logic, algorithms, problem solving (even to problems as fun as deciding your correct spot at a lunch table), patterns, rigour, planning and carrying out a plan, complexity, efficiency, understanding an argument, choosing your stance and trying to convince others about your point of view, collaboration, clear and unambiguous expression, uncomputable algorithms and computation theory, paradoxical situations, “inspirational puzzles”, meeting new people, making friends………….. just to name a few.

This course was great, my favourite this semester, I had an amazing instructor, a helpful Ta and met many great people. It helped me to think differently and look at arguments logically.

And while I am glad that I am almost done my first year at UFT, I really feel sort of unhappy that this course is coming to an end.

Of course, I still have the exam to worry about. I hope all of us do well on the exam. 

I guess: BYE for now 




Assignment 3, limits AGAIN...



The last week of classes has been crazy for me with 3 different assignments due (this slog being one) and knowing that in less than a week, I will be writing my first exam has made it even worse.
One of the remaining 2 assignments was assignment 3 for csc165. And now that it is done, I can look back and reflect upon what I did. I don’t intend to write a detailed exclusive post of assignment 3 as I did for assignment 2 (don’t know why, just don’t feel like it, I guess). However, there is something that came up on assignment 3 that I would like to discuss:

Limits !!!!!

Limits have come up quite a lot in all calculus courses I have taken so far (which are not that many); they came up in high school calculus, 1st year university differential calculus and 1st year University integral calculus. And although in each of these courses we have extensively studied techniques to manipulate these limits and get all sorts of answers, we have not talked about what they actually mean as much. Sure, there would be a section of the book talking about deltas and epsilons, and the professor would discuss what they mean in 3-5 minutes, but at the end we always hear that we “don’t need to know them for the test” or that we “don’t really need to worry about them unless [we] want to major in math.” And therefore the meaning of limits is taught extensively in only these math courses that prepare students to be math majors.

In short, I was taught to solve the limit but not to interpret it.

In csc165, the definition of limits came up at the very beginning of the course when we were just talking about ∀ and ∃. Lately, it has come up again and been linked to determining the algorithms’ complexity.

In csc165, we have spent lots of time trying to understand what a limit means and to visualize it using graphs.And now that I understand what a lim of x going to infinity means, I think it is quite great that stuff we are taking in cs can link back to stuff we took in calculus courses.



what is computer science really about?

What is Computer science really about?

    Since we are almost two weeks into the second semester, I can probably provide a somewhat accurate answer for this question and hopefully, as I proceed through this semester, I will get to discover more about csc165 and about computer science in general.

    First off, I have to mention that I was not originally considering computer science as a major. I decided to take csc108 in the first semester to get an idea about what computer science is really about. And now, as a computer science student, I am really glad I tried it out. 
    
    Now, I have to mention the purpose behind this quick biography; through studying computer science, I have found that lots of comments concerning computer science are totally untrue. Here are the top 3 'computer science myths' :

I have to state that these are not facts, it is just my own personal opinion and if you have different views, please share. 



MYTH 1:
computer science is all about programming/computers/codes.……etc

This may seem as a very reasonable claim but I think computer science is more than just using a programming language to write codes.
Computer science is not only about implementing a code, but also about making the code work and proving that it will do what it is supposed to do.
In other words, it is about logic and reasoning and I can find no better proof than the fact that we have to take csc165 in our first year of studying computer science, a course about logic and mathematical reasoning.
In csc165, we have barely used computers and most of the work is happening on paper (and in our brains).


MYTH 2:
  If you want to take computer science in university, you must have a programming experience.


This was of a huge concern for me since I had no programming experience  whatsoever and although I admit people with past programming experience had some sort of an advantage over me (They got to skip csc108). What I notice now is it does not matter since computer science is also about logic and implementing is only one part of it and thus I think that anyone who is eager to learn computer science has the potential to do great.


MYTH 3:
csc is all about human machine interactions (you don’t get to talk to other people)

Totally wrong! I think by far, my computer science courses are where I got to talk to many people. In all lab/tutorial sections, we are always encouraged to work together in pairs. group programming (I think that is the correct term ) is always stressed and supported in all labs. And in csc165 lectures, we always get time to talk to other people about our reasoning for a certain problem, which really helps.