David Newall

Born Australia, August 31, 1961
Telephone (04) 11 12 13 41

Professional Affiliations

1997, Member of the Institute of Electrical and Electronic Engineers
1996, Member of the Association for Computing Machinery
1995, IEEE Computer Society
1987, Member of the Australian Computer Society
1986-87, ACS SA branch executive
1985, Affiliate of the Australian Computer Society


2004, Replacing Windows™ infrastructure with Linux™
2001, Dynamic rate limiting in an ISP setting
1999, A submission for Trips and Traps for August 1999 edition of AUUGN
1998, Zero-risk Legacy System Re-engineering (How To Squeeze 200+ Concurrent Users Onto One Little i486)

Project Details

2005 Distributed Transaction Manager C, UNIX
Implemented APIs, communications manager and transaction manager compliant with X Consortium standards for TX and XATMI.  This provides an alternative implementation for these standards, equivalent to the core functions of BEA's Tuxedo.
2004 Web shop C, UNIX, HTML, SQL
Wrote a web ordering front-end for a legacy point of sales system.  The web communications with the legacy system using a TX/XATMI compliant transaction manager (c.f. BEA Tuxedo.)
2004 Web Templating System C, UNIX, HTML, CGI
Wrote a templating library and CGI framework to support writing CGI applications in C.
2003 Custom reports Oracle, Artemis, Visual BASIC, Crystal Reports, SQL, UNIX
Prepare custom reports on project management data.
2003 Reports PostScript
Produce high-quality PostScript and PDF reports from flat-file input.
2002, 2003 Oracle/Artemis integration Oracle, Artemis, C, SQL, UNIX
Provide support and custom integration between Artemis ProjectViews and Oracle Project Accounting
2000 - 2002 ISP management C, UNIX, TCP/IP
Develop tools to automate tasks relating to operation and management of an ISP service.
2000 Network monitor UNIX, TCP/IP
Write tool to monitor network links and report faults.
1999 Australian Unix Users Group (AUUG) Executive Committee
1999 Y2K Repair Pascal
Y2K repair work for software for US Telco
1999 Telephone batch barring C, UNIX, Tuxedo, SuperCard
Tuxedo client to provide email interface for barring telephone services.
1998 UNIX to AIX conversion C, UNIX, AIX, Tuxedo, Informix, Oracle
Convert Tuxedo application running on SCO + Informix to new hardware, AIX + Oracle.
1998 Telnet/3270 Tuxedo, UNIX, C, 3270
Implement new communications interface between Tuxedo and legacy systems using Telnet for 3270.
1998 Telephone barring C, UNIX, Tuxedo, SuperCard
Implement tuxedo client & services to provide ability to query and update telephone-barred status on Telco switch.
1997 Y2K Audit C, UNIX, Tuxedo, Informix, SuperCard
Audit Tuxedo based CRM system, identify non-compliant hardware and software, develop proposal for repairs.
1996 Wool Sort Machine - Communications Libraries C, C++, UNIX
Implemented abstraction and communications libraries for hardware controllers for Wool sorting machine.
1994 - 1996 Team manager C, UNIX, Tuxedo, SuperCard
Managed support and development team for Tuxedo based CRM system.
1994 Calling card management C, UNIX, Tuxedo
Write Tuxedo interfaces to provide calling card management for a major Australian telco.&nsp; Back-end data management was implemented in CICS on the IBM mainframe, and interfaced to Tuxedo using my purpose-built language.
1993 CRM, Legacy Integration C, UNIX, Tuxedo
This project utilised Tuxedo running on two i486 computers, with Informix SQL database.  The project provided a history of notes and commitments made to customers by frontline support staff of a major Australian Telco, and integrated access to the legacy billing and trouble reporting systems.  The system was accessed via Macintosh computers.  Integration with legacy systems on IBM mainframes was achieved with zero change to legacy applications.  Legacy systems were presented as Tuxedo services using a purpose-built language which I designed, with access via 3270 terminal controllers and scripted in that language.
1992 Support services MS-DOS, Windows, UNIX
Various support services including Lan Manager for Unix, installation of distributed PC data-base, Unix support
1991 Hardware fault diagnosis
Wrote a program to aid in fault diagnosis for Olivetti betting terminal.
1991 Sales Support
My duties included assisting sales personnel writing tenders; discussing and analysing customer requirements; assembling and demonstrating systems; installing systems; solving telephone queries; providing on-going software maintenance; assisting with hardware fault diagnosis; consulting on software design; and programming as required.
1990 Report writer C, Unix
Designed and wrote a report description language, compiler and runtime.
1990 Extended precision arithmetic C++
Designed and wrote a class to implement arbitrarily long integers
1987-1990 Unix systems programmer C, UNIX, TCP/IP, NFS
In an academic environment, I was responsible for support of all the Unix systems which variously included NCR Tower 32/600's, diskless and diskfull SUN 3/60's, SUN Sparcstation and SUN 4/490.  My duties included preparation of benchmarks for selection of new systems; participation in hardware selection committees; installation of new systems; periodic maintenance of systems; support of operators; design and development of student accounting; installation, support and maintenance of networking software; installation, support and maintenance of electronic mail systems; registration of users; monitoring and maintenance of system security.  Networking facilities included NFS, TCP/IP and ACSnet (SUN III).

I developed a disk and usage accounting system for the Unix systems, which integrated with the central VMS student accounting system.

I was a member of the Elm development group, which was an early "open source", global development project.

1987 Database shadowing C, UNIX, UUCP
Wrote a system to shadow Informix/CISAM files to a 'warm' backup system.
1987 Communications drivers C, Unix
Developed message transmission interfaces between a telepaging system and paging transmitters complying with specifications for Telecom Telefinder paging network, and PET
1986 Call center ordering system C, Unix
On a team of three, I helped produce an ordering system for a call center.  Orders were dispatched by modem to printers at regional delivery centres (pizza kitchens).
1986 Lecturer
I was invited to relieve a lecturer at Elizabeth TAFE.  Subjects were Programming Fundamentals which included problem solving, NS charts, pseudo-code, flow-charts, Boolean logic and structured programming; and Information Processing Concepts which included computer literacy, hardware, operating systems, languages and office automation.
1986 Insurance brokers package Pascal
Designed in conjunction with a consortium of brokers, I wrote a multi-user management system for insurance broking; an accounting package for insurance brokers, if you will.
1985 Systems research Pascal, C, Unix
Developed multi-user application framework including: Terminal independent window manager; multi-key ISAM data base manager; Large Binary Object (BLOB) database type; user definable reports; advanced memory manager; and performance profiling.
1985 System migration Pascal, Apple ///, MS-DOS
Converted sporting club membership ledger from single user Apple /// to MS-DOS network.
1985 Customs and duties spreadsheet Lotus 1-2-3
Wrote userproof spreadsheet to calculate customs & duties of imports.
1984 Development Manager
Supervise the company's four programmers, and oversee design and development of new projects.
1984 Database APIs Pascal
Designed and wrote libraries for b-trees, file record management, free-form text editor and free-form text database fields.
1983 Insurance broking system Pascal, 6502, 8086 assembly, Apple ///, MS-DOS
Programming, maintenance, installation and training in the company's main product, a multi-user insurance broking package written in Pascal and assembler.
1983 CASE tools Pascal
Conceived on the notion that programs are the same, with just fields and screen layouts being different; I designed and wrote tools for programmers: a WYSIWYG editor and program generator for database maintenance screens, and another for simple reports.
1983 Payroll module Pascal, Apple ///
Designed and wrote a payroll module for an integrated accounting suite.
1983 Petty cash ledger Pascal, Apple ///
Wrote a petty cash ledger for an integrated accounting suite.
1983 Hospital billing system Canon CX-1, BASIC
Wrote a billing program for use in a group of private nursing homes, as per system requirements defined by the group's manager.
1982 Post-sales support Canon CX-1, BX-1, AX-1, SX-320, BASIC
As Canon's Victorian State Programmer, my duties were to provide post-sales support, debugging and customisation of packages for Canon's Victorian and Tasmanian customers.
1982 Payroll module Pascal, CP/M
Developed payroll module for integrated accounting suite.
1981 Stock module Pascal, CP/M
Part of a team of three, two programmers and an accountant, developed stock control module for integrated accounting suite.
1980 Localisation BASIC, Apple ][
Localise a US accounting package written for the Apple ][
1980 Project time recording tool Pascal, Apple ][
Designed and wrote a tool to record and report time worked on different project tasks
1980 Develop stock control BASIC, CP/M
Designed a stock control system to customer specifications, and integrate it with I.M.S.'s debtors and creditors programs
1979 Maintenance of public bar stock system BASIC, Canon BX-1
Duties were to support, debug and improve a stock system, written in BASIC, designed for hotels.
1977 Graphical analysis of census data DEC-10, Tops-10, Fortran
During the year of my matriculation, I wrote a program for the Centre for Applied Social Science Research at Flinders University.  The program, written in FORTRAN on a DEC-10, provided graphical analysis of census data.
1975, 1976 BASIC interpreter APL
During my last two year at school, I wrote a BASIC interpreter.