| Full name: | Tony John Ibbs |
|---|---|
| Address: | 22 Bullen Close, Cambridge CB1 8YU |
| Telephone: | 01223 564807 |
| Email: | tony@tonyibbs.co.uk |
I am an experienced programmer and toolsmith, with particular skills in C, Python and (embedded) Linux. I write clear, easy to maintain code. I am adaptable, interested in and able to take on new fields and skills as necessary. I am self motivated, enthusiastic, able to work independently or as part of a team, and have good communication skills.
Active skills in: C, Python, Pyrex, cross-compilation toolchains, embedded Linux on MIPS and ARM, shell scripting (Unix and Windows), HTML, XHTML, cvs, svn and bzr, Busybox, Vim and [X]Emacs.
Significant past experience with: Java (including JNI), Lull, TeX/LaTeX, XML and XML-Schema, object-oriented database design and implementation.
I have experience with national and international standards, both in creating and using them. I have experience working within a successful ISO 9001 (TickIt) accredited system.
April 2008 - present: Kynesim Ltd., Software Consultant
- Linux support work, continued support for the Amino AmiNET125 system, and other work as clients require. This has included responsibilty for producing releases and for merging new code back into the customer's CVS repository. Much of the work has been related to adding support for Windows Media and Windows Media DRM.
- Continued support for the tstools (originally MPEG tools) package, and have started work on Python bindings for the library, to make it more flexible and add automated testing of the codebase.
- kbus, a lightweight messaging system aimed particularly at embedded Linux platforms.
2006 - April 2008: Amino Communications Ltd., Software Consultant
Continued support work for colleagues and customers (including extensions to the MPEG tools, new support for video codec regression testing, and ad-hoc preparation of system for EMC testing).
An initial key developer of the Amino AmiNET125 platform (based on the TI DaVinci chip).
Worked at most levels of the Amino software stack, from ioctls to Opera, including (amongst other things):
Initial investigation of the AmiNET125 system, including determining a suitable cross-compilation toolchain, working on initial NAND support, writing serial bootloaders and the UBL (user bootloader), integrating TI/MontaVista Linux changes, and initial graphics driver support.
Producing documentation on Amino build systems and other infrastructure.
Producing a simplified run-time system for the AminNET125 for use in codec testing, independently of the main Amino software stack.
Proposing, reaching consensus on, documenting and implementing a new mechanism for dealing with "picture-in-picture" issues (requiring intervention at various layers of the software stack).
Some work with Javascript and CSS, primarily in a test environment.
2004 - 2006: SJ Consulting Ltd., Software Consultant
- Wrote MPEG tools for manipulating and reporting on MPEG TS, PS and ES streams.
- Developed and maintained the AR7STB patchset, and related bootloader support. (The AR7STB is a variant of the TI AR7 evaluation platforms, developed by SJ.)
- Extended the SJ browser, including rewriting the HTML parser (supporting a variant subset of HTML 3.2), and adding preview capabilities to allow page designers to inspect pages off-box.
SJ Consulting was bought by Amino Communications Ltd in January 2006
1998 - 2003: Laser-Scan, Senior Software Engineer
In 2003, I returned to Cambridge, and direct employment with Laser-Scan. I continued as one of the senior developers of the Gothic team. Amongst other tasks, I:
- Participated in a Y2K project for UKHO (porting Fortran applications on an obsoleted computer to C on Sparc, whilst maintaining acceptable positional accuracy).
- Provided technical support to OS(GB) and UKHO.
- Was technical project manager and lead developer embedding Java in the Gothic GIS.
- Acted as an internal advisor on Laser-Scan's contributions to the Open GIS Consortium on the production of GML (Geographic Markup Language).
In 2006, Laser-Scan renamed themselves as 1Spatial.
1991 - 1998: Glasgow University Department of Topographic Science, Research Assistant
In 1991 I relocated to Glasgow, but was offered the chance to continue with my Gothic development work, fully funded by Laser-Scan. As a University employee, I also:
- Contributed to the JUGGLE project, embedding the Gothic GIS within Java.
- Provided support for and acted as advisor on student GIS projects.
- Participated in the University's VMS Managers Group and Unix System Support Group.
- Installed and supported Emacs and TeX/LaTeX on the University VMS systems.
1980 - 1991: Laser-Scan Laboratories Ltd., Programmer then (1984) Senior Software Engineer
Significant tasks included:
- Developing a cartographic digitising system.
- Technical liaison officer to OS(GB) and MCE(RE).
- Contributing to an Alvey project (with UCL) on 2.5d vision systems.
- Core developer on cartographic software suite LAMPS.
- One of the original three developers on the Gothic GIS.
B.A. (Hons) Computing Science 1981 Cambridge University (converted to M.A. 1985)
1988 - 1992: BS 7567 (NTF)
This was the UK national standard for geographic data transfer. I was invited onto the NTF Technical Group in 1988, and then onto the working committee to produce the British Standard. I coordinated the first drafts of the standard, and chaired the working group that produced Part 3 (the ISO 8211 binding). I was also a member of the raster working group.
1994 - 1996: ISO/IEC 8211:1994
ISO 8211 is a data standard format, used as the underlying mechanism for various other formats, including the IHO's DX90. I was one of the two people tasked with updating it. This involved a complete rewrite of the document. I also designed the simple textual language that we introduced to describe the contents (schema) of an ISO 8211 dataset.
I wrote an open-source Python library and application for handling ISO/IEC 8211 data, as an aid to understanding the standard, and to help debugging ISO 8211 datasets. Although I no longer maintain this myself, it still exists at http://py-iso8211.sourceforge.net/.
1992 - 1996: CEN TC 287/WG-3
TC 287 was an attempt to produce a European Standard for GIS data transfer. I was a member of Working Group 3, dealing with the actual transfer layer, and of sub-group 3.1, tasked with physical data transfer.
1999: mxTextTools metalanguage
mxTextTools is a package of fast text manipulation tools for use with Python. I wrote a simple language which can be used to represent mxTextTools tag tables in a more readable form.
2000 and later: Python Doc-SIG and docutils
Python's Doc-SIG was founded to look at documentation issues relating to the language. In 2000/2001, I was active in the discussions which led to the adoption of David Goodger's reStructuredText, and wrote the (initial version of) the reStructuredText Quick Reference.
2008 and later: tstools
I am the administrator and principal author of the tstools project, a set of open-source cross-platform command line tools for working with MPEG data. The emphasis is on relatively simple tools which concentrate on MPEG (H.264 and H.262) data packaged according to H.222 (i.e., TS or PS), with a particular interest in checking for conformance.
2009: kbus
I am the administrator and principal author of kbus, a lightweight messaging system for embedded Linux systems. The initial implementation is via a kernel module, with tests and user interface in Python.
I am a member of the ACCU (Association of C and C++ Users).
I helped start and am currently Secretary of CamPUG, the Cambridge and East Anglia Python Users Group.
Available on request.
I am married, with two children. I am an avid reader (especially of SF and fantasy), and have an interest in eBooks and related technologies. I have in the past been on the organising committees of science fiction conventions (including the 1988 UK National Convention), and published a fanzine (Reading Matters, typeset with TeX).