Looking back: TM129 Technologies in practice

Looking back: TM129 Technologies in practice

The three blocks of TM129 were much more distinctly separated than in other modules. Starting with the networking block on Cisco’s Net Academy, then following that up with an Operating Systems block where we gained practical experience using a Raspberry Pi Linux virtual machine, and finishing on robotics where we programmed our virtual robots through Jupyter Notes using the nbev3devsim Python module.

The first thing you should be aware of, if you enrol on this module, is that the materials you can expect to receive in the post is a copy of Isaac Asimov’s I, Robot. I started the module in January and I received my copy of the book in the post before Christmas in an Envelope marked with the Open University’s logo. There was no other clues or context besides the book, the envelope and the fact that I was part-way through two modules and about to start a third which included a block on robotics. I half wondered if this was a Christmas gift being sent by one of the module teams to all of the students. It didn’t take long to confirm the other theory, that this was my TM129 module materials. I checked via StudentHome and found a tracking number to match with this delivery. Now I was left wondering if I was missing other materials. A quick online search confirmed what I can confirm to you, having now completed the module as well as the search, that I, Robot is all the physical material you will need for this module. Everything else is hosted either on Net Academy or on the module website (with alternative formats available for accessibility).

Each of the assessments included some theory and some practical work, as well as “ePortfolio” activities where we would demonstrate our engagement with the exercises in the module.

Block 1: Networking

The entirety of this block is run through Cisco Net Academy rather than the OU’s module site. Cisco breaks up the learning material into a series of concise bite-sized chunks of written detail and demonstrative videos. It is an effective means of teaching the material in gradual steps that subtly boost the student’s knowledge and understanding through increasingly complex material. I found the conciseness of the material to leave some descriptions unnecessarily ambiguous and difficult to commit my own understanding to notes until clarification received when the concept was covered in more details in later topics. This meant a lot of my notes went through a lot of revision before I was satisfied they’d be useful.

Practical activities in this block took on the form of exercises and challenges to complete in Cisco’s Packet Tracer application. Packet Tracer is a network simulation tool. You can build networks in the application to a desired physical and logical topography and simulate network events from the devices on the network. As the name implies, you can also follow how packets are broken up and shared across networks. You can, for example, set up a web server on one network with a router providing internet access and a laptop or PC on another to request web pages from the server. You can configure and secure devices in the same way you would with the real life devices they represent.

The first tutor marked assessment (TMA) covered some networking theory and some Packet Tracer exercises. A large portion of this TMA’s marks were also awarded based on marks we received for the end of module (Block 1) Cisco Networking exam.

Block 2: Operating systems

In this block we took on the role of a Linux systems’ administrator using a VM while learning about how the operating system is made up, how the kernel interacts with the hardware and controls/shares access for the application programs, various physical components that enable the operating system to boot, run and operate, and virtualisation.

Virtualisation covered some familiar concepts from the networking module, but the difference in how this was presented in the context of operating systems only strengthened the idea of the modules being segregated. In this block, we also got to make use of a Raspberry Pi cluster in some practical exercises that demonstrated parallel computing.

The TMA for this block covered the theory and a practical scenario with different conditions we had to satisfy to install, set-up and administrate an operating system for a hypothetical organisation. This scenario included changes to the organisational structure that we had to respond to in order to ensure appropriate access and confidentiality to sensitive documents. We also had to discuss a hypothetical scenario of building a home entertainment system, choosing and justifying an appropriate Linux distribution (testing our understanding of the block and research skills), and coming up with an appropriate method of testing the suitability of our choice before we have actually installed it.

Block 3: Robotics

The book, I, Robot, is an interesting read that you will likely enjoy if you are a fan of science fiction. My own copy has been added to my bookshelf and I’ll probably pick it up for a casual read again in the future. It is lightly referenced throughout the robotics block to illustrate some concepts that are relevant in modern robotics. An excellent example of this is how potential fields can play out in practice. One of the stories in Asimov’s anthology describes the predicament of a robot stuck in the balance between two competing priorities of equivalent precedence; that is to carry out its instructions and to preserve its functionality/existence.

The practical exercises were fun to participate in for this block. It was easy to go beyond the prescribed exercises to further learn what could be done with the tools we were given. One exercise made use of a simple chatbot, a version of Eliza written in Python. After completing this activity, I started working on a suite of “doctors” and one “patient” with different personalities who could be loaded in place of Eliza. They would respond to different things and in different ways, though largely keeping to the premise of prompting the user/patient to discuss more. For example, I had one doctor play the role of a GP rather than a therapist. A counter would keep track of the number of rounds of conversation had taken place so the doctor could ask increasingly invasive questions based on how long the conversation had been going. This basically just added to the pool of responsive available in both general responses and in specific prompts. The counter was used for all personalities, though the only purpose it served for them was to calculate a bill to charge the patient. The personality who was actually a patient was more like a game. An illness would be chosen at random then (using a dictionary similar to the other personalities) would respond to the user asking for help and responding to prompts to give more clues. The objective for the user was to play the role of the doctor and make the correct diagnosis.

Another exercise involved programming a robot to complete the Thruxton Grand Prix circuit. It was tricky optimising the right balance between speed and keeping the robot on track. After coming up with a method that I was happy with, I changed the program to allow the robot to complete many laps and fine tune some of the numbers involved based on performance on previous laps. This was not a means of having the robot map out the circuit as it completed a lap (though I had considered trying this too), but of allowing it to learn how to gauge and compensate for bends as it approached (“when light difference between sensors is in this range change left and right wheels to those speeds”). Some bends might have been as sharp as each other, but one might be more of a kink in the track than a turn. It was tricky compensating for this, but a fun challenge. Others had completed the challenge in a more efficient way than me, also staying on track but completing the circuit in much faster times. I adopted what I had learned from them into my own attempt, but I was pleased with the robustness of my own approach. My robot would take a cautious first lap then each subsequent lap would adapt to what it had learned from the previous. On testing against other track imaged I uploaded, it still worked as well. If left to run enough laps it would eventually reach a stage where it was effectively switching back and forth between similar methods, scoring itself higher on speed on one, but higher on consistency (sticking to the track) on the other).

Again, the TMA for this block covered theory and practice. In one question we discussed the imitation game described by Turing in his paper Computing machinery and intelligence. With my tongue in my cheek I took the opportunity to highlight how Turing illustrated the possibility that a computer might house a soul. I saved myself being deducted points by adding context to this comment, keeping it relevant to the subject matter and how it is commonly interpreted against my own interpretation. In another question, while justifying the use of autonomous robots in space exploration, I realised the light delay between Earth and Mars meant (at times) a 42-minute round trip not accounting for the time between receiving and subsequently sending. I couldn’t resist the chance to throw in an obvious Hitchhiker’s Guide to the Galaxy reference in to a discussion on robots in space, so used this figure in my justification. We also covered some game theory and the practical challenge of having a robot draw shapes seemed relatively simple compared to what we had been doing in the block itself.

End of module assessment (EMA)

The EMA covered all blocks with theory and practical elements for each. It was broken into three parts. The first part asked a short question on each of the block topics. The second required us to choose two from three longer questions on each of the blocks. Although the robotics block was the most fresh in my mind, I opted to answer the questions on networking and operating systems as these would be most relevant to me going forward. The networking question started with a Packet Tracer activity and finished with a short question on network security. The operating system question was an in-depth discussion on LiMux (Linux in Munich). Which meant applying the understanding we had gained on the topic to understanding a real world scenario. The robotics question asked for an article regarding robots and AI in healthcare. The EMA finished with the ePortfolio section, but required more introspection and discussion than in the previous assessments. This served as part of the personal development that all the level 1 modules (besides maths) included in their assessments.

Going forward

I’m happy to report another distinction in the bag for this module, meaning that I have completed all level 1 modules with distinction now. I enjoyed a short break between the end of this module and the start of my first level 2 module, TM255, which I am in the early stages of. I have also felt confident enough to start applying for SOC analyst jobs that I’ve seen advertised. I have my fingers crossed that I can develop some professional experience while completing my studies.

Leave a Reply

Your email address will not be published. Required fields are marked *


This site uses Akismet to reduce spam. Learn how your comment data is processed.