Home 

More info
M205 Fundamentals in computing
M353 Programming and Programming languages
T223 Microprocessor Systems University page
M206 Programming - An Object Oriented Approach University page
M301 Software Systems and their Development University page
M358 Relational Databases University page
T171 You, Your computer and the Net University page
T209 Information and Communication Technologies University page

Introduction
For Many years previous my passion was creating software for the Commodore Amiga. In the early days there was a shortage of good software, if you wanted something you often ended up having to writing it. But I came up against ‘brick walls‘, where I could not advance further. It became apparent that I needed to formalise my experience and build on my knowledge.

Having a busy professional life, distance learning and The Open University was an ideal choice. It broadened my horizons in more ways than I could have imagined, not only in computing but in the whole learning process, it teaches you to be analytical of all you read, to draw your own opinions and to catalogue these thoughts in a clear reasoned way. It also allowed me to follow my interests; to take on courses in areas appropriate to what I wanted to know, when I need to know them. These course invariably were computer related and covered many aspects of computing.

M205 Fundamentals in computing
This was a basic grounding in traditional programming, something I was quite familiar with. It taught the top down approach to software design and concentrated heavily on the software development cycle. The Pascal programming language was used as a basis for teaching of program structure, modulisation, linked lists, binary trees and sorting algorithms. The course also introduced relational databases.

M353 Programming and Programming languages
M353 follows on from M205 and explored various languages (Pascal, Eiffel, Ada, Prolog) and their uses, advantages and disadvantages. Ada it discussed concurrency and the problems associated with shared resources. It also introduced me for the first time to Object Orientation, using the programming language Eiffel. It used Axiom sets and abstract data types to create specifications for classes. The final part of the course was my favourite as it was spent studying parsing algorithms and recursion in
order to design a simple Pascal compiler.

T223 Microprocessor Systems University page

T223 explained the working of a modern Microprocessor system, using Assembly and C to explain run time systems, I/O, interrupts and memory. It also included data transfer via a serial bus (RS232 port), mathematics and number bases. This gave me an invaluable insight into the lower workings of computers, again a lot of which I already knew.

M206 Programming - An Object Oriented Approach University page

M206 taught me an object orientated approach to software design using Smalltalk. It discussed the need for encapsulation, reuse and ‘OO’s powerful tools; inheritance and polymorphism. An important part of M206 was HCI, human - computer interfaces (or interaction), where the emphasis was on consistent, easy to use designs. Such criteria's included affordance, feedback, easy reversible actions and human cognitive understanding.

M301 Software Systems and their Development University page

M301 built on M206 taking ‘OO’ design a stage further. This time teaching Java in some depth including graphics, I/O streams, multi-threaded environments, TCP-IP Sockets, applets and web programming. The Unified Modelling Language (UML) was used throughout for analysis and design of applications.

Much of the course discussed concurrent systems. In the form of distributed databases and operating systems. It introduced the problems critical real-time systems have and the context of concurrency in shared data like deadlock and synchronization. It also introduces some solutions in the form of semaphores and mutual exclusion.

M358 Relational Databases University page

This was a level three course that discussed most aspects of database design and implementation. From relational theory to implementation. The course concentrated heavily on SQL query language, as a data definition language and for data manipulation (DML). It also looked at different kinds of Database Management Systems, storage strategies, data mining and social implications.

T171 You, Your computer and the Net University page

This was initially taken as a way to make up some credits, but turned out to be very useful and informative. Rather than just reading text about the history of the PC and the evolution of the Internet, it was made interesting by having to investigate it yourself though the Internet! It was extremely good fun, it included working in remote teams, utilising the University's conferencing. An important emphasis was on reading and writing skills.

T209 Information and Communication Technologies University page

For my final year I decide to continue T171 with it's follow on course T209. Again collaboration was an important aspect with many assignments being team efforts. We first looked at mobile phone technology and integration and convergence of these technologies with computer based technologies, in the shape of PDA's and laptops.

Networking and network design was of particular interest to me, where we used a network simulator to experiment with different design solutions.

T209 also discussed speech recognition and demonstrated some of the current pitfalls and rounding off with a look at artificial intelligence and Human Beings as cyborgs

Top 
Home
 

Academic Resume