Posts from 2004

Programming in Java

Online, and seemingly publicly accessible, course on Java (for people with prior programming experience) with some very rich multimedia resources including streaming videos of lectures.

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!

PyDev installation

I am following Ron Smith’s 15 June 2004 article Python development with Eclipse and Ant from IBM developerWorks. The first step is to install the PyDev plugin which is available at Eclipse update site http://pydef.sf.net/updates/.

First problem is that when I try to call the python interpreter to run the test I get a launch error. Don’t know if this is an Eclipse, PyDev or Python problem. Launch configuration seems ok! I checked the pydev user forum and this is a known problem and we await a fix.

Eclispe 3 Installed

I have just downloaded and installed Eclipse 3.0. For safety’s sake I backed up my old workspace and deleted the .metadata folder. I also unzipped Eclipse into a clean directory. On startup, Eclipse now asks for a default workspace. This feature should make installation much easier on the School network, cause we can leave it to the students.

Java Technology Concept Map

This interactive diagram to the Java universe is a flash application that links to the documentation. I thank Malcolm Davies on Java.Net for drawing our attention to this excellent resource.
In a nutshell:

"Developers learn and use Java to create and run Programs that make Devices and the Internet useful for People."

UMLet - Another Free UML Tool

Martin Fowler mentioned UMLet in his recent article on UmlSketchingTools which I blogged about earlier this week. A paper in which the authors (Auer et al, 2003) describe the ideas behind UMLet is very insightful and pretty much echoes my own experiences of over-blown UML tools in the teaching domain (and I’ve tried ArgoUML, Poseidon CE, Together and Rational Rose with variable — but mostly limited — success over the last three or four years).

I have to say that, although it currently only supports class, object and use-case diagrams, UMLet looks very promising and may well prove to be a winner in next year’s Software Engineering courses. Better yet, UMLet can be used as an Eclipse plugin!

Reference

M. Auer, T. Schurtschenthaler, and S. Biffl (Vienna University of Technology), 2003. A Flyweight UML Modeling Tool for Software Development in Heterogeneous Environments”, 29th Euromicro Conference (EUROMICRO’03), Sept. 01–06. Balek-Antayla, Turkey. Conference Proceedings Published by IEEE.

ONLamp.com: The Pragmatic Programmers Interview

O’Reilly Network interviews the Pragmatic Programmers Andy Hunt and Dave Thomas in OnLamp. Many nuggets including this one:

ORN:

Ward Cunningham once told me “With better IDEs, static languages such as Java are almost as easy to program in as dynamic languages.” You’re both fans of the Ruby language, especially when compared to more static languages. Do you think that the potential shift to writing business applications in slightly more dynamic languages such as Java and C# […] is good for programmer productivity and ease, or do those languages not go far enough?

Dave:

… Java and C# are not really dynamic in any meaningful way. Memory management is a small part of the picture, but the real gains in these more dynamic languages come from different areas, particularly from a flexible type model and from the ability to metaprogram. Ultimately, it comes down to ease of expression. If I can express myself in code at a level closer to the problem domain, then I’m going to be more effective, and my code is likely to be easier to maintain and extend…I know some companies are using [problem domain

code] with great success. And you know — they’re keeping quiet about it.