Wednesday 28 January 2015

Week 4: First Impression! Eek!

Hi again Sloggers!

       CSC148 has gotten through a few new topics these past few weeks and all the material so far that we have covered have been interesting. We discussed how to construct classes such as how we did in CSC108 and were taught the efficient ways of doing so which were pretty straight forward. We also learned a new concept called "list comprehension" which is neat and I wish I had known about in CSC108 because it would save me a few lines of code which looks neater and saves time. I'll be definitely using this a lot in the future. 
      These past few weeks have been at a quick pace in which we are expected to know a lot about python and it is our job to apply this knowledge to problem sets. We have done Stacks, Inheritance and Subclasses which are all new material and are quite neat because I did not know that you can create Subclasses with classes that we've already made. It's very useful for when you want to make a general class that applies to a bunch of specific problems such as the example in class where you can make a general class "Shape" and make it's subclasses the different kinds of shape such as "Triangle", "Square", "Circle" since every shape has different characteristics...etc. In order to do so, we must remember to use inheritance or override the methods in order to use it for a specific subclass. 
         We used the knowledge from lecture about Subclasses and Inheritance and applied it Assignment One where we have to create and develop a game called Subtract Square. This assignment was pretty overwhelming at first due to the fact that we were so used to CSC108 assignments where we were given the format of the whole method but the function body and all we had to do was fill it in. This assignment was challenging because we had to figure out what we had to do and come up with a variety of ideas on how to implement these ideas as we are given the task to develop everything from scratch. I like to refer to it as "taking the training wheels off that big kid bike" because that's really how it felt like. But as weeks went by and the more we read the assignment hand out, the clearer it became. The task we had to do and was pretty neat to see the outcome that we've actually designed and implemented a functioning game from scratch.
       Labs were also cool to experience as it is our first time in a computer lab and actually working on Computer Science exercises with peers. It gives you the opportunity to collaborate with others in lecture which is a really good idea to test out your team work and problem solving skills. I believe this really helped with completing the assignment as well! Furthermore, CSC148 has been on a quick start and has been a bit challenging to grasp the new concepts of problem solving and applying our coding skills but i'm really up for the challenge this semester! So here's to a great semester with all you geeks! :) Cheers.


I would also like to comment on the achievements we've had so far and how our programming skills have progressed. This feeling is very well explained in this SLOG post (This SLOG), I too played the game many times because it's something that my partners and I have created and not for the sole purpose of its entertainment. Even though this game is very simple, the work and effort you know you went through to achieve this result is something very accomplishing and something that makes me proud to be studying what i'm studying. 

Saturday 17 January 2015

Why Do Geeks Need to Write?

          In order for the world to expand it's knowledge with innovative ideas from outstanding individuals, one must learn and have the key skill of communication to communicate one's ideas with the world. There are many forms of communication and writing is a very important one! I guess you're wondering, 'Who may these outstanding individuals be?' Even if you aren't, well the answer is anyone, geeks included. Our mind is constantly producing such exceptional and phenomenal ideas that the world is just waiting to hear. In order for people to share their ideas they must communicate their ideas in a way that is accessible and easy for everyone to reach, which is why writing is such an important skill for geeks (or anyone)!
     
    Let's take Sir Isaac Newton for example...
         This handsome fellow was filled with such brilliant and extraordinary ideas and concepts that helped shape science as a whole. All of his work and his theories were published in the famous PhilosophiƦ Naturalis Principia Mathematica, which he published himself. But where would science be if he had not published his work and ideas in writing? Will one simply just keep communicating one's ideas to another until the word gets around? But let's take the game "Broken Telephone", as a message gets passed on to another and gets to the very last person in the chain, the message that has been passed on has been changed with a different meaning that it once had originally from the beginning. A good way of avoiding this is to keep it in writing, in black and white proof, so that nothing can be disoriented. Also, if he had not published his writing and ideas in text, other geeks that came after him would not be able to expand or correct his ideas in more scientific accuracy. This could result in scientist stating the same theory over and over without knowing that it already exists when the theory could already have been expanded on. This also allows scientists to work together to make the process easier and more efficient by working as a community.
       I know this example is science/physics based but this applies for all geeks in any field including Computer Science. Communicating in a text based interaction is a very important skill for geeks to do to expand technology and to expand the worlds knowledge. It is also beneficial to learn and explain mistakes you've made and have learned from. Another excellent example is Piazza. If one has any questions or important statements that they may think may be important and beneficial for other classmates to know, their ideas and questions will get around a lot quicker resulting us to all work as a community for each others successes. Taking the Piazza concept and putting it into blog form... you get SLOGS, which is this very post right now (my very first one to say the least). The main thing that i'm trying to get at is: Writing is an important skill that geeks need to know and must learn in order to present and share their ideas to the world to expand the world's knowledge as a community for everyone's benefit.