Skip navigation.

Curriculum Vitae

Name: James Hamilton
Education
Currently studying for a PhD related to Java, Java bytecode, Java bytecode decompilation, Java bytecode obfuscation.
MSci Computer Science First Class Hons.
Carshalton Boys Sports College
I attended Carshalton Boys Sports College, from September 1997 to June 2004, and received 10 A* - B GCSE qualifications and the following A Level and AS Level qualifations: A Level ICT (B), A Level Physics (D), AS Level Pure Mathematics (D) and AS Level Geography (B).
Work Experience
Tutor - Goldsmiths, University of London (part-time, October 2007 - Present)
  • Problem Solving with Creative Programming (2nd year class)
  • Previously tutored in:
    • Foundation Mathematics (Foundation year class)
    • Graphical Object Orientated Programming in Java (2nd year class)
    • Network Programming in Java (2nd year class)
    • Introduction to Java and OOP (1st year class)
    • Database Systems (2nd year class)
Teacher - Lewisham College (part-time, October 2007 - Present)
  • Communication Systems (Foundation Degree in Business Information Technology, First Year)
  • Computer and Network Systems (Foundation Degree in Business Information Technology, Second Year)
  • Previously taught:
    • Visual Programming using VB .Net (National Diploma for IT Practitioners, Second Year)
    • Internet Business Applications (Foundation Degree in Business Information Technology, First Year)
    • IT Organisation and Deployment (Foundation Degree in Business Information Technology, Second Year)
ICT Technician / Webmaster - Carshalton Boys Sports College (part-time, August 2003 - August 2007)

I started work as an ICT Technican providing assistance to the network manager, students and staff of this secondary school while attending their sixth form. This involved solving hardware and software problems, installing new systems and providing general support.

I then moved to the position of webmaster in June 2004 and developed their website using PHP/PostgreSQL/HTML/CSS running on Apache on a Red Hat Enterprise Linux server (server also maintained by me). The site contained a custom built content management system allowing teachers to edit pages, add news and pictures. It also contained IT room booking system to allow teachers to book free IT rooms for classes. I liased with the staff at the school to make additions and update the site on their behalf. The site has been redeveloped since I left.

Freelance web development work (part-time, 2006 - present)
  • functionpix.com - photography/journalism site which accepts user contributions and makes them available to the public/the media (development has now been handed over to another developer).
  • wannabeeuk.com - converted a static HTML site into a dynamic PHP site with features such as page editing, user sign up, internal user admin system, profile editing, search, photo upload, web based messaging system, user favourites (now offline).
  • www.viewdo.com - user-contributed how-to videos. I found a security flaw in the download page and offered assistance.
  • blinkersoff.co.uk - I co-worked on this project for Saatchi & Saatchi which consists of an image gallery website capable of accepting user contributions - my part being the backend development using PHP/MySQL and Flash uploader.
  • Montrose House Website - subcontracted by IT firm Kalms Associates to design this web site advertising a holiday home.
  • www.kalms-associates.com - simple web site
Private Tuition

I have given lessons on computing subjects to second and third year individuals and groups.

Programme Monitoring Representative

During my second and third years at Goldsmiths I was a programme monitoring representative for my degree programme.

Other Information
Technical Experience
  • Languages: Java, Java bytecode, PHP, Javascript, ActionScript, SQL, XML, HTML, CSS.
  • Applications: Netbeans, Eclipse, Fireworks, Flash, Dreamweaver, phpMyAdmin, phpPgAdmin, Apache, OpenOffice, Firefox, Vi, TextPad, Microsoft Office
  • Database Systems: PostgreSQL, MySQL, SQLite
  • Platforms: Ubuntu (Linux), Windows (98, 2000, XP, 7) & Mac OS X 10.5
  • General programming design patterns, including Object Oriented Programming, database development, AJAX techniques.
  • Prior experience with, and understanding of: XSLT, XPath, Visual Basic 6 & .Net, Prolog
MSci Project

Static Source Code Analysis Tools and their Application to the Detection of Plagiarism in Java Programs. Grade 83%.

This project develops a system for detecting plagiarism in sets of student assignments written in Java. Plagiarism is viewed as a form of code obfuscation where students deliberately perform semantics preserving transformations of an original working version to pass it of as their own. In order to detect such obfuscations we assume we have a set of programs in which we attempt to find transformations that have been applied. We investigate tools for static analysis and transformation of Java programs to build a system for plagiarism detection.

BSc Project

Artificial Ants: Simulating Ant Behaviour and Investigating Applications In Computing. Grade 91%.

Ants are excellent route finders, with the ability to find the shortest path between their nest and a food source, by using pheromone trail clues to organize themselves collectively. My project introduces ant behaviour by the implementation of an ant simulation, and finally applies lessons learned from the simulation to graph and network routing problems.

 

Courses studied/results achieved
YearCourseGrade
4Artificial Intelligence53
4Computer Security62
3Data Compression71.04
3The Semantic Web69.32
3Logic Programming69.40
3Language Design & Implementation60.60
3Advanced Databases: Data Mining66.54
3Web Site Design & Implementation93.04
2Graphical OOP and Network Programming using Java82.50
2Data Communications and Algorithms66.20
2Software Engineering and Research Methods60.68
2Database Systems74.55
1Mathematics for Computing71.00
1Information Systems60.00
1Introduction to OOP92.00
1Introduction to Internet Computing75.00

 

Previously completed coursework examples
Languages
Basic Arabic - Reading, Writing and Speaking
References
Adu Antwi
Business & Computing,
Lewisham College,
Lewisham Way,
London,
SE4 1UT,
United Kingdom
+44 (0)20 8694 5117
Sebastian Danicic
Department of Computing,
Goldsmiths
University of London
New Cross, London, 
SE14 6NW,
United Kingdom
+44 (0)20 7919 7868