Well, this is the 6th day of teaching and the first day of the second week. (I’m not counting weekends.) Some of the students went to Shenzen over the weekend and discovered “an electronics mall the size of Adelaide” which was the big motivator for going. Sadly, I wasn’t able to join them at the World Cup this morning as my flight got in late and I still had marking and work to do, but here’s a picture that one of the students, Sarah, took of the crowd – and they were a very vocal crowd for 3 in the morning!
Today we finished off talking about the way that programmers work with the network when they write applications. When someone sends information too fast for a receiver, we need to control the flow of the information, but when there’s just too much information on the network (from possibly many sources) we have to deal with the congestion. Both of these (and the solutions we use) are really important reasons why the Internet works today! We had a lot of discussion, group-based work and I spent a lot of whiteboard time motivating how we could get information out of the network without having to do anything beyond what we already wanted to do, just to use it.
We had started later so students could get some downtime and it certainly paid off because participation was as good as it had been on other days and brains were only slightly slower than usual. It’s the great thing about having the freedom we have here, teaching only one course and leaving time for work and thinking time. I certainly prefer it as a teaching approach!
Feedback on the quiz and short exam are also positive although there is work to do on making the questions slightly less ambiguous because the terminology of networking often coincides with other uses and there isn’t the same amount of time to get students used to a new reference frame.
After a steamy few days, it seems cooler today and we’re seeing a large amount of blue sky. Here’s what the campus looks like from outside the building I’m teaching in!
Well, we had a normal session to start with, which consisted of discussion about the Transport layer (that bit of the network that makes it easier for the people who program your web browser to talk a web server) and some of it was good but some of it – ehhh, I think it got away from me. There are some really complicated diagrams and I’m still thinking about the best way to teach them. I suspect it’s something you go away and do, then discuss, then do again so that’s a note to self.
We broke for lunch and I (coincidentally) ended up at the same place as my students so I joined them. (There is no escaping the Nick.) They’re all doing the right thing and eating everywhere to see what’s good and basically getting into the whole experience. (They may all be addicted to duck’s web now. Sorry, that’s my fault.)
After lunch, it was short quiz and short exam time – the students have weekly quizzes, marked automatically and worth 5% each, and then a short answer exam, which I mark manually and these are worth 10% each. Because of the compressed timescale, I’m trying to scaffold the revision process by requiring the knowledge earlier. From what I’ve seen so far, it appears to be working, although I’m not sure how appreciative the students are. Once I’ve marked everything, I’ll discuss it with them to see what their impressions are. I’m a great believer in working with students to try and build better courses and this is one of the best opportunities I’ll ever have.
I have to head back to Australia for the weekend but I’ll be back Sunday afternoon. Until then I’ve asked my students to work hard, play hard and be safe. I’ve delayed the class on Monday morning from 9am to 1pm, not because I’ll be jet lagged, but because CUHK is putting on a giant screen showing of the world cup with local commentators, starting from 3am. This is exactly the kind of serendipitous cultural moment that we want to capture in these sorts of exchanges so, not only am I shifting the class, I’m planning to go along myself.
Sorry to my German readers but I have to support Argentina or my friend Guadalupe will kill me. Vamos Argentina! Have a great weekend and I’ll fill you in on Monday in a few days.
We were back in the classroom today and the overall plan was to talk about some teaching materials that I’d put on-line already on programming network-based applications. (A lot of work has gone into making it easier for people to write programs that talk across the network and it’s really useful to write these programs for practice because it exposes students to all of the problems that occur when an application spans more than one machine.)
Rather than just walk the students through some slides, I made it pre-reading and then asked them to produce a very small example that sent communication from one machine to another. We had some really interesting results – everyone had been working on it and had something to show, although a couple of people had discovered that trying to add features just before a demo can make a the demo a little less ‘demonstrative’ than it might otherwise have been. The demo code showed a lot of humour and also a high level of the understanding of the problems.
This led into discussion of why certain protocols work the way that they do and, in many cases, it’s because people wrote things that would work for the network of the ’70s and ’80s. These days, with the Web, video streaming and on-line gaming, we have different requirements in many senses and now that the students have written some code and tried some things, they’re ready to start thinking about the “whys” and the “hows” and, most importantly, the “what nexts” of the network.
It wasn’t a long day as the amount of work that had gone into the programs reduced the amount of time I had to spend explaining concepts (funny, that). After a quick design workshop on what the next assignment should look like, where everyone took part in forming ideas as to how we would build it, we broke early to give people more time to work on what they wanted to do.
Goodness – work done early leads to extra time for tasks later? Who thought that would ever work!
I’ve been trying to get a good picture of the Run Run Shaw Science Building, which is far more striking than it ever is in my photos, so here’s one I found on Wikimedia. It gives you some idea of the striking nature of CUHK – buildings nestled among the trees on the hillside.
I’m back on the road for intensive teaching mode again and, as always, the challenge lies in delivering 16 hours of content in a way that will stick and that will allow the students to develop and apply their understanding of the core knowledge. Make no mistake, these are keen students who have committed to being here, but it’s both warm and humid where I am and, after a long weekend of working, we’re all going to be a bit punch-drunk by Sunday.
That’s why there is going to be a heap of collaborative working, questioning, voting, discussion. That’s why there are going to be collaborative discussions of connecting machines and security. Computer Networking is a strange beast at the best of times because it’s often presented as a set of competing models and protocols, with very few actual axioms beyond “never early adopt anything because of a vendor promise” and “the only way to merge two standards is by developing another standard. Now you have three standards.”
There is a lot of serious Computer Science lurking in networking. Algorithmic efficiency is regularly considered in things like routing convergence and the nature of distributed routing protocols. Proofs of correctness abound (or at least are known about) in a variety of protocols that , every day, keep the Internet humming despite all of the dumb things that humans do. It’s good that it keeps going because the Internet is important. You, as a connected being, are probably smarter than you, disconnected. A great reach for your connectivity is almost always a good thing. (Nyancat and hate groups notwithstanding. Libraries have always contained strange and unpleasant things.)
“If I have seen further, it is by standing on the shoulders of giants” (Newton, quoting Bernard of Chartres) – the Internet brings the giants to you at a speed and a range that dwarfs anything we have achieved previously in terms of knowledge sharing. It’s not just about the connections, of course, because we are also interested in how we connect, to whom we connect and who can read what we’re sharing.
There’s a vast amount of effort going into making the networks more secure and, before you think “Great, encrypted cat pictures”, let me reassure you that every single thing that comes out of your computer could, right now, be secretly and invisibly rerouted to a malicious third party and you would never, ever know unless you were keeping a really close eye (including historical records) on your connection latency. I have colleagues who are striving to make sure that we have security protocols that will make it harder for any country to accidentally divert all of the world’s traffic through itself. That will stop one typing error on a line somewhere from bringing down the US network.
“The network” is amazing. It’s empowering. It is changing the way that people think and live, mostly for the better in my opinion. It is harder to ignore the rest of the world or the people who are not like you, when you can see them, talk to them and hear their stories all day, every day. The Internet is a small but exploding universe of the products of people and, increasingly, the products of the products of people.
Computer Networking is really, really important for us in the 21st Century. Regrettably, the basics can be a bit dull, which is why I’m looking to restructure this course to look at interesting problems, which drives the need for comprehensive solutions. In the classroom, we talk about protocols and can experiment with them, but even when we have full labs to practise this, we don’t see the cosmos above, we see the reality below.
Nobody is interested in the compaction issues of mud until they need to build a bridge or a road. That’s actually very sensible because we can’t know everything – even Sherlock Holmes had his blind spots because he had to focus on what he considered to be important. If I give the students good reasons, a grand framing, a grand challenge if you will, then all of the clicking, prodding, thinking and protocol examination suddenly has a purpose. If I get it really right, then I’ll have difficulty getting them out of the classroom on Sunday afternoon.
(Who am I kidding? My fingers have an in-built crossover!)