Friday 30 January 2015

The First 3 Weeks

In the first three weeks, we mainly covered classes and inheritance.  Most of the material covered before inheritance was review from CSC 108, with the exception of the __repr__ method and list comprehensions.  For the most part, I had no trouble understanding inheritance as I enjoy coding with classes. 

During the second week, the first assignment was posted.  At first, my group members and I were confused by the wording of the assignment, but after re-reading it a few times and working on some of the code, we understood it better.  By the end of week three we had nearly finished the assignment and we just needed to add a few aesthetic details, docstrings and special methods. 

So far, I am enjoying the course, and it helps to have the same professor who taught my CSC 165 section because the consistency in teaching style makes it easier for me to absorb what he is teaching.

Sunday 25 January 2015

Why do Geeks need to know how to Write?

A Geek, by definition is "an enthusiast or expert especially in a technological field or activity".  Thus, geeks  know more than the average person about their area of expertise.  In order to communicate and share their ideas and knowledge they need to be able to write effectively.  This means being able to communicate with different audiences, from other experts to people who have no knowledge of their field.  

Keeping good notes as a geek is working on a project allows them and others to look back on what they've done and understand their process and reasoning.  An example is commenting code.  If a programmer writes succinct and accurate comments, another programmer reading their code will be able to easily comprehend their process instead of having to look through the code line by line to understand what is happening.  This is especially beneficial when reviewing large coding projects as it can be very time consuming to study every line of code.  
 
A geek may have to write for a variety of audiences.  When writing for other experts, such as in a technical journal, they need to be able to convey their findings clearly so that others in their field can evaluate the merit of their results.  The use of technical terms is appropriate for this audience.   However, when writing user manuals, the use of technical terms would be ineffective and confuse people who are not familiar with them.  In this case, concepts need to be expressed in a way that is understandable to the average user.   As well, a geek may be required to write a business proposal, whether seeking funding, or trying to market their product.  Therefore, the ability to write persuasively is an asset.  This is also true when preparing and delivering presentations as good notes that are engaging and informative will keep the audience's interest.

The term geek is synonymous with someone who is not able to communicate very well, however, the opposite is essential to be a successful geek.