Posts in category "Teaching"

My Own 25 Years Of Ed Tech

Yesterday, I received my copy of Martin Weller's book 25 Years of Ed Tech. Inspired by Chapter 2 The Web (1995), I travelled back in time to my own first attempt to teach online. I visited the Way Back Machine (web.archive.org) to discover that the first official University website (www.swan.ac.uk) was archived on 11th December 1997.

Navigating through that web site, I discovered that the Department of Electrical and Electronic Engineering website (which I built) was archived a few months earlier. I also rediscovered that I had published a potted history of the Electronic and Electrical Engineering web site on this blog.

In the spirit of celebrating my own 35-year career in teaching, I looked back at my own first attempt at e-learning. And here is my web site for EE208: Control Systems, circa May 1997.

My 25 Years of EdTech Electrical and Electronic Engineering, Swansea University, May 1997. Captured from the Internet Archive’s Way Back Machine on 7th November 2020.

The course notes were created using LaTex2HTML, but unfortunately, the images and the mathematics, which was presented using images, have rotted in the archive. Today I use Markdown for my lecture notes, and MathJax for math generation, but the technology that delivers my content to students is still web-based.

So for me, like most ed-tech folks, the key technology in my teaching career has been the World Wide Web. The difference now, for most of us, is that we don't need to know that!

Annoyances

Today was an open day at UWS. Every department and school was expected to lay something on for potential students. Every admissions tutor (who usually gets lumbered with this sort of thing) is expected to take time off to be pleasant and show the little kiddies around. Except that all the labs that I would have shown were locked because no one had told the technicians that they should be opened! I’m afraid that I blew a gasket and got out of there. So if there was a tour of EEE and ICCT facilities, I didn’t give it. I feel quite guilty about letting folks down … but I’m also angry that here’s yet another example to support my growing perception of the decline of Electrical Engineering at Swansea and my need to get out of here!

Furthermore, the Exchange web server is down so I can’t read my email from home. Given that my connection to exchange via Outlook at work is also next to useless, I’m incommunicado for a while!

Summer school blogging exercise kicks off!

In about 45 minutes time (19.00 BST) I will be teaching some Engineering Summer School students how to register for, set up and use a Blogger.com group blog. Should be fun. The title link is to the support site.

The only fly in the ointment is that England’s Euro2004 Quarter Final against host nation Portugal kicks off at 19.45! Still, nanny has given us all permission to leave early, so hopefully we won’t miss much! In the mean-time, here’s the BBC pre-match report.

Suggestions for teaching Java

Not quite on topic, but well worth considering:

“If I were sitting down to design a course today, I’d put at the top of my paper: What can I do to make them curious and interested? What can I do to get them to where they can be creative? And finally, What can I do to help them feel like THEY kick ass, as opposed to thinking that I kick ass? (too many teachers try to impress the students with how smart the teacher is, but IMHO it’s way better for everyone if the students leave your class impressed with how smart THEY are).”

  • Kathy Sierra

Experiments with CVS modules

I have a plan to refactor the lab exercises for EG-140 in readiness for automated submission and marking. The first step was to put the BlueJ projects that students upload into a new repository. However I wanted the repository to be such that all the projects would be within the eg-140-laboratory project but different subsets could be delivered to various audiences. For example, students starting a week’s work should be able to get hold of just a single project as in

cvs -d _cvs\_repository_ co naive-ticket-machine

or a whole week’s exercises as in

cvs -d _cvs\_repository_ co eg-140-week2

Here is my project structure:

eg-140-laboratory
|
+-- week2
|
+-- better-ticket-machine
|
+-- src
|
+-- test
|
+-- bluej
|
+-- files that students upload (a bluej project)

After some reading in Essential CVS and the CVS official manual I discovered how to use modules for this. Here is my module file:

Three different line formats are valid:

key -a aliases...
key [options] directory
key [options] directory files...

Where "options" are composed of:

  • -i prog Run "prog" on "cvs commit" from top-level of module.
  • -o prog Run "prog" on "cvs checkout" of module.
  • -e prog Run "prog" on "cvs export" of module.
  • -t prog Run "prog" on "cvs rtag" of module.
  • -u prog Run "prog" on "cvs update" of module.
  • -d dir Place module in directory "dir" instead of module name.
  • -l Top-level directory only -- do not recurse.

Note: If you change any of the "Run" options above, you'll have to release and re-checkout any working directories of these modules. And "directory" is a path to a directory relative to $CVSROOT.

The "-a" option specifies an alias. An alias is interpreted as if everything on the right of the "-a" had been typed on the command line.

You can encode a module within a module by using the special & character to interpose another module into the current module. This can be useful for creating a module that consists of many directories spread out over the entire source repository.

CVSROOT CVSROOT

The modules file itself

modules CVSROOT modules

EG-140 Laboratory: only available to staff!

eg-140-laboratory eg-140-laboratory

Student projects: incomplete projects that have to be edited. Essentially the BlueJ projects provided with Barnes and Kölling. Week 2: the individual projects

better-ticket-machine eg-140-laboratory/week2/better-ticket-machine/bluej naive-ticket-machine eg-140-laboratory/week2/naive-ticket-machine/bluej
book-exercise eg-140-laboratory/week2/book-exercise/bluej

Week 2: all together

eg-140-week2 -d week2 &naive-ticket-machine &better-ticket-machine
&book-exercise

As you can see, we set up the bluej folder in each sub-project to be a module, named a they are in Barnes and Kölling. We then have a combined module to bring together all the projects in a week’s labs (corresponding to a chapter in the book) as a CVS module eg-140-week2. When we check out this project, it creates a CVS sandbox named week2 which contains the three projects.

The next extension will be to get the staff-only version with worked solutions and JUnit tests working.

A couple of questions for later

  • If we want students to check-in changes to their own repository, how can we do it? The CVSROOT where the original code comes from would be inappropriate … we effectively want each student to have his/own repository. CVS can probably do this so back to the book!
  • How can I get the compiled tests into the Bluej folders without breaking version dependencies? [answer might be cvs update — build all — cvs commit?]

Micromouse 2004

My colleague Tim Davies and I assessed the web sites that form a key part of the UWS Micromouse project that is part of EG-252 Group Design Project. Some really good sites but my favourites were Group B which scored highest for style and Group E which scored highest for content and UML designs. Some bad apples too: Group D doesn’t have a site and Group F doesn’t have much content!

Balloon Blogging

Committed myself to contributing to Headstart and EESW (two summer schools that we run in the School of Engineering) … again! Subject of my bit this year will be Blogging (or more formally Using the Internet as a Research and Collaboration Tool. The idea is that I’ll give the students a potted introduction to the Internet, www, semantic web, rss, blogging etc and then get them to create group blogs focussed on high-performance ballooning (our Summer School topic). The beauty is that Blogger’s new features (including email submission of articles) provide a great way for the students to keep in touch with each other (and UWS of course) when they all disperse to their homes.

Also, as a side issue, I’m hoping that it’ll do a little bit to promote Blogging as a useful school activity.