Tuesday, April 28, 2009

spring awakening

I've been rather negligent about this blog lately. A lot of things have happened since Halloween.


Such as being a zombie.


The main consumer of my time since I last posted has, fairly obviously, been school; that is the reason for my presence here, in any case. So, in no particular order, here are some of the things I have accomplished during my studies here in Dublin:

  • I wrote a distributed application in Java for booking train journeys across Ireland.

  • I learned about various forms of cryptography, network authentication, and key exchange (like Kerberos and Diffie-Hellman)

  • I studied, memorized, and used concurrent programming techniques such as two-phase locking and two-phase commit.

  • I listened to lots of lectures about the data link, transport, and network layers of the OSI stack.

  • I wrote part of a Facebook application for rating events.

  • I won a bottle of cheap champagne for suggesting that Intel improve the profiles in their wireless card management software.

  • I gave a business plan presentation about putting advertisements on cheap umbrellas.

  • I led a team of eleven to complete a framework for administration of a managed motorway system.

  • I drank a lot of Guinness (this one is very important to the learning).

  • I wrote distributed applications using the Sieve of Eratosthenes and Conway's Game of Life.

  • I helped modify a discrete event-based network simulator to allow for mobile network nodes, and may even get a publication out of the resulting paper.

  • I discussed all the current forms of intellectual property protection.

  • I watched presentations on network file systems, and on the difference between thread-based and event-based concurrent programming.

  • I learned how to use thread pools and event channels.

  • I heard talks about reindeer herders in Lapland and about transmitting data to Mars orbiters.

  • I worked with all sorts of XML-based technologies, like XSLT and DTD and RDF and OWL.

  • I started using virtual machines.

  • I wrote a little bit of Perl.

  • I had to know and describe the difference between .Net Remoting and Java RMI in terms of their use of proxy objects.

  • I studied and wrote part of a paper on new network management technologies such as WS-Management, which uses composable web services to manage network elements.

  • I learned a language for use in proving the validity of concurrent algorithms.

  • I read papers about third-generation peer-to-peer technologies.

  • I gave a part of a presentation about service-oriented architecture.

  • I did, well...a bunch of other stuff that one might do during a one-year masters' course in computer science.



Of course, I had some fun during my time here as well, especially since it's so close to Europe. For instance, I went to Italy and ate an entire octopus...


The tentacles were tricky.


...and played on the beach.


No cliffs in Italy!


I also read two books, and I went to Cork in the south...


They have cliffs there, though.


...and Connemara out in the west...


Like cliffs but landlocked.


...and even to Belgium.


Ah, Belgium; where 13 years makes a beer more tasty.


So I've been out and about at least a little bit. I did some work, too; our Italian clients have been (mostly) successfully updated to a new version.

Now it's summer for me (exams finished up a few weeks ago), and it's time to start working seriously on my thesis. I picked a topic on something called knowledge-based networking, which involves using some of the semantic technologies we learned before to allow for more expressive subscriptions in the middleware we're using for content-based networking and message delivery. I'm adding support for temporal and causal reasoning, which also involves adding a database to each message broker. That's probably gibberish to most people, but the full description is far more esoteric, so I'll leave it at that.

Hopefully my next post won't be so many months in the making...