ServerDeveloperApplication
Contents |
I, James Page, apply for upload rights for the Ubuntu Server package set.
Name |
James Page |
Launchpad Page |
|
Wiki Page |
Who I am
I'm James Page, based in Norfolk in the United Kingdom. After graduating from Aberystwyth University with a BEng in Software Engineering I had a brief spell working for a UK defence company. I then spent the better part of a decade pushing an open source software strategy in a well know UK based financial services company. During this time I also developed and deployed a number of large, high through web applications using Java.
I now work for Canonical as a member of the Ubuntu Server Platform team.
My Ubuntu story
My Ubuntu story is quite short; I started using Ubuntu personally in late 2009 but I did not start to contribute to the project in any way until I started to work for Canonical in September 2010.
I've really enjoyed helping develop Ubuntu; I've always been a user of open source rather than a developer and I really like the different challenges this change brings. Specifically I've really enjoyed applying some of the Continuous Integration techniques I used when developing Java applications to automating the testing of Ubuntu ISO's and Ubuntu Server ec2 images (see below).
I think that I've been to shy about working directly in the Ubuntu development release. With hindsight working more directly in Debian/Ubuntu for the Jenkins packaging work (rather than through PPA's all the time) would have saved me time as I would have received earlier feedback on my packages and not had to spend so much time preparing work for upload (either to Debian or Ubuntu).
My involvement
My current areas of involvement:
- Ubuntu Server Team.
- Ubuntu Server ISO Testing.
- Ubuntu Server ec2 Testing.
- Ubuntu Java (mainly through Debian Java).
Things I'm proud of
Testing Automation
I really like doing things that save other people and myself time; when I first started working on Ubuntu I helped develop a framework for automatically testing ISO installations (started by Mathias Gug) into something that could be run automatically on daily basis using Jenkins during the development release. This has helped in a number of ways:
- Early insight into install issues; but testing installs on a daily basis if something in the development release breaks its quick and easy to see when it happened and identify the underlying issues.
- Time saved; although the server team does undertake manual ISO testing this is now constrained to the more complicated test cases that we have not been able to automate.
During the Natty cycle I re-wrote the ec2 testing framework originally developed by Scott Moser into a Python based project that could be used in a similar way for testing the Ubuntu AMI images for ec2. This has now also been automated using Jenkins and has enabled visibility of testing results in a way that the previous framework did not deliver.
Jenkins Packaging
This is still work-in-progress but is something I am proud of; during the Natty release cycle I successfully packaged Jenkins from source (albiet in PPA's - see my comment above on what I could do better). This involved packaging a large number of new Java dependencies and exposed me to a good cross section of packaging approaches for Java libraries.
Hopefully Oneiric should see this work in the Ubuntu archive; I'm working as part of Debian Java team to get the dependency chain and Jenkins into Debian so both distributions can benefit from this work; the nice side effect of doing it this way is that there are a larger number of Java packaging people in Debian which should enable better support in the long term.
Examples of my work
In addition to work on specific release deliverables and testing automation I'm also an active member of the Ubuntu Server team; I participate in the weekly triage rota and have tried to ensure that I work on areas outside of my specific area of expertise within the team.
- SRU's
mailman - http://pad.lv/659975
- openldap -
ntp - http://pad.lv/715152
tomcat6 - http://pad.lv/654549
awstats - http://pad.lv/707365
- FFE's
groovy (natty) - http://pad.lv/661230
- MIR's
jansi, hawtjni, jansi-native - http://pad.lv/676904
ant-contrib - http://pad.lv/783421
- Syncs and Merges
groovy - http://pad.lv/777103
tomcat6 - http://pad.lv/776558
jansi - http://pad.lv/776551
xom - http://pad.lv/776550
I also keep an eye on anything Java related within Ubuntu; I try as much as possible to ensure that changes which are made in Ubuntu are reflected back into Debian to minimise the delta between the two distributions as much as possible.
Things I could do better
Plans for the future
General
What I like least in Ubuntu
Please describe what you like least in Ubuntu and what thoughts do you have about fixing it.
Comments
If you'd like to comment, but are not the applicant or a sponsor, do it here. Don't forget to sign with @SIG@.
Endorsements
As a sponsor, just copy the template below, fill it out and add it to this section.
TEMPLATE
== <SPONSORS NAME> == === General feedback === ## Please fill us in on your shared experience. (How many packages did you sponsor? How would you judge the quality? How would you describe the improvements? Do you trust the applicant?) === Specific Experiences of working together === ''Please add good examples of your work together, but also cases that could have handled better.'' === Areas of Improvement ===