FIT9017: Week 1

A two hour lecture and two hour tut for what I expect to be my favorite subject this semester. Four hours straight from 6pm-10pm is a little tough after 4 hours of straight classes prior. The lecture was presented by Judy Sheard who was a change from the male dominated IT lecturing staff. I was a little disappointed in the opening lecture as it was very remedial, at what I would consider a high school difficulty. I must do this subject as I have had no previous ‘Official’ programming classes.  I would say however that most programmers learn 90% of what they know from self learning and if that doesn’t count as credit then nothing should. Furthermore, I am the one paying for my subjects, if I want to do something more challenging then I should at least have the opportunity to do so. Judy did make a good counter to this however mentioning that the beginning of the subject may seem simple but pay attention as thing become more difficult very quickly, so lets hope she’s right.

The lecture contained administrative start (4th and final time I have to hear it :D) moved onto brief history of computing (again), brief history of programming languages and then an introduction to Java and the Object Oriented Paradigm. It was good revision but honestly, anyone who is doing postgraduate IT studies and had not already learned these basics in their preparation studies is simply not preparing sufficiently.

Luckily I found the tutorial, taken by Michael Smith to allow more independent learning at our own pace. I appreciated Michael’s frankness and self learning teaching style, he seems to take the attitude of facilitating learning for those who want to rather than dictating to the class. Look forward to more tuts in this subject.

Started using BlueJ in the tutorial which at first I thought would be far inferior to netbeans which I currently use (see link on left). I immediately found the benefits of BlueJ when creating an abstract class and a depended class, the visual layout assists with the code writing rather than interrupting it and I am sure this tool will help me fully grasp the concepts and practical implementation of Object Oriented coding.

Pearl of the week:

When writing in Java, the this.attribute notation was always a source of confusion for me… why would anyone use it? I had never needed it. The reason is specifically for when parameter names are the same as attribute names, (something I learned not to do) but a logical explanation for something that seemed quite the opposite to me previously. Thanks Michael.

FIT9018: Week 1

The first lecture for Computer Technologies and Operating systems was held today. The format for the subject is a one hour lecture followed by a three hour lab session, something I was happy to learn. Especially after finding that the lab session would be crash courses on a number of practical tasks such as setting up a web server and installing linux distros ect. The lecturer, Andy Cheng, was energetic and able to explain the topics covered in the lecture clearly.

In the lecture we, for the third time this week, went through administration topics (thankfully quickly this time).  Andy went on to discuss some relevant background on computer history, followed by some fundamental computer definitions and diagrams. Things started to get interesting when we got into the definitions of:

  • The Bus / Bus controller – lines of for data flow between components (lines one can see on motherboards)
  • Fetch/Execute Cycles – Fetch retrieves next instruction from the Program Counter and loads it to in Instruction register, in Execute cycle the Control Unit decodes and executes instructions.
  • Interrupts – Tells the CPU to suspend current task to memory and deal with interruption task.
  • Multiprogramming – Multiple programs in memory and switching the processor between them using interruptions. Gives the illusion of processing many programs at once.

Unfortunately we ran short on time towards just as we were getting into the explanation of interrupts (damn the administrative crap wasting the first quarter of the lecture).  This subject seems very practical and I look forward to learning many methodologies which I can apply immediately to current projects.

FIT9019: Week 1

Started off the semester for Database Technologies with a lecture by Manoj Kathpalia. Although the lecture was slightly unstructured we got through the admin and some basics about the history, uses and concepts of databases. Interesting points were on the evolution of databases from strings to filing cabinets to file based programs to database management systems DBMSs and the current state of relational DBMSs. I was suprised to find that we would be doing most of our coursework on Oracle systems as MySQL or another open source solution would provide the same learning environment but with greater opportunities for extended self learning.

We spent a good deal of time discussing why database processing was advantageous with the key points being:

  • Extracting information from data (for decision making)
  • Sharing of data
  • Standards
  • Controlled redundancy
  • Integrity control
  • Security
  • Economies of scale
  • Data independence

Each of these points has a number of more practical benefits for organisations.

Some disadvantages of databases primarily as cost and complexity were also raised. Although I have been using mySQL databases for some time I was not aware of the ANSI/SPARC architecture which we covered next which defined the External, Conceptual and Internal levels of modern database structure.

Pearl of the week:

The Database industry is the second largest of the IT sector, topped only by Operating systems, with over US$15 billion per year of revenues. MySQL was also not mentioned in the top DBMSs (a point that will surely change assuming Oracles purchase of Sun does not derail the c0mmunity driven project).

It will be nice to get some theoretical understanding to back up the practical experience I have had with databases, I am sure the theoretical understanding will have large influence on the way I think about and execute database design and management in the future.

FIT9030: Week 1

Started the semester with a Systems Analysis and Design double, 2 hour lecture followed by a 2 hour tutorial, both taught by David Grant. First of all congratulations to David for holding everyone’s attention for 4 straight hours which is a mean feat in itself. A colourful teaching style with interesting analogies kept the class listening and involved.

As with most introductory classes their was a lot of non-subject specific items covered however a structured preview of the course along the reasons why we should learn the material has set a good foundation for the coming classes. Having the class material up on Moodle very early (in comparison to other subjects) allowed me to preview the lecture and tut which is basically a must. This begs the question why other subject coordinators haven’t done the same.

The tutorial was interesting with the usual self introduction rounds. The following activities and homework assignment, a broad analysis of some large systems, seem a fairly indirect avenue to explaining some basic principles of systems. I guess the broad stroked approach is designed to spark interest in as many students as possible. Although one should already be interested enough if one has chosen to do a post graduate course on the topic.

Pearl of the week (Taken from FIT9030, Sem 1, 2010, Lecture 1):

Analyst’s approach to Problem Solving

  • Research and Understand the Problem
  • Verify the benefits of solving the problem outweigh the costs
  • Define the requirements for solving the problem
  • Develop a set of of possible solutions
  • Decide which solution is best and make a recommendation
  • Define details of chosen solution
  • Implement the solution
  • Monitor to ensure desired results are achieved

Although the acronym ‘RVDDDDIM’ may lack catchy-ness, this process has clearly come from practical experience and I can make easy relations from the theory to real-world. Thanks David.