Curriculum Vitae for Scott T Jones
13027 Scofield Farms Drive Austin, TX 78727-4599
512-832-1411 (Home)
Software Developer/Performance Analyst
Education
Operating Systems by Years of Experience
Programming Languages by Years of Experience
IBM Employment History
IBM Performance Inspector Development of cross-platform performance tools for AIX, Linux, Windows, and z/OS, including IBM Internal and Open-Source External versions of our tools. My work concentrated on the redesign and enhancement of our Java profiling agent and heap dump post-processor. I also developed a GUI client for viewing heap dumps and a Java program to automatically apply performance settings to WebSphere configurations. Direct support of our tools customers is an integral part of the job. The external version of Performance Inspector is available as an Open Source project from SourceForge.
Porting Performance Tools to New Platforms I ported existing performance tools and features from Windows to AIX, Linux, z/OS, and the PERCS simulator.
Performance Test for Linux Projects Test and evaluate the performance of unannounced products on Linux.
Java Development for OS/2 Develop Java 1.3.1 for OS/2.
Java Development for AIX Develop Java 1.3 for AIX 5.1.
JIT Development for OS/2 Develop Java Just-In-Time Compiler for OS/2 Java 1.2.
JIT Development Develop Java Just-In-Time Compiler for OS/2 and Linux.
Java Development Develop Java for multiple platforms.
Graphics Engine Extended Development for OS/2 Warp 4.0+ Primary interface for off-shore OS/2 Video Development being done in Riga, Latvia.
Graphics Engine Performance for OS/2 Warp 4.0+ Performance enhancements for the OS/2 Graphics Engine and GRADDs. This included writing two new GRADDs for the S3-Trio and Chips and Technologies 6555x families of video cards and the new SBFilter which chains to the generic video GRADD for improved performance.
Graphics Engine for OS/2 Warp 4.0 Development and maintenance of Graphics Engine routines. This also included the design and development of a GRADD (GRaphics Adapter Device Driver) for the VGA.
Graphics Engine for OS/2 for PowerPC Development of common Graphics Engine routines for both the Intel and PowerPC versions of OS/2.
Game Development Support for OS/2 Warp 3.0+ My job was to support the development of OS/2 games. This included the development of GameSrvr, an OS/2 extension I designed to enhance the performance of games. It allows Presentation Manager applications to run as full-screen applications with their own unique video mode. This translates to a 12 times performance increase for full-screen 320x200x256 graphics over an identical application maximized on a 1024x768x256 desktop. This was shipped as part of Volume 8 of The Developer Connection for OS/2.
Window Manager for OS/2 Warp 3.0 I was a key member of the team which converted the Window Manager from 16-bit Assembler to 32-bit C, drawing on my experience gained in the conversion of the Graphics Engine. My specialty was performance, particulary in the areas of message dispatching and thunking, the transition layer between 16 and 32-bit routines, which resulted in a 10% reduction in the size of the Window Manager and a more than 2% increase in total system performance.
Graphics Engine for OS/2 versions 2.0 thru 2.1 I was part of the team which converted the Graphics Engine from 16-bit Assembler to 32-bit C, working with MicroGrafx. I was responsible for memory management, transformations, and function dispatching and journalling. My work on performance resulted in a 10% reduction in the size of the Graphics Engine.
Help Manager for OS/2 version 1.3 I was responsible for redesigning the compression schemes used by the Help Manager. My work resulted in a 70% reduction in the size of the OS/2 Tutorial.
Base Video Subsystem for OS/2 versions 1.0 thru 1.2 I designed and implemented the entire text portion of the Base Video Subsystem, based on the work I did for my game, ISC. I was the team leader for version 1.1. During this time, I also created INSPECT, an automatic code inspector that identified coding inefficiencies in Assembler code by examination of listing files.
DOS and TopView interface for PC Related Products I was the technical interface to all DOS operating system extensions for all internal products related to the Personal Computer. During this time, I also developed an automated test tool, with record and playback features, for use with the TopView messaging system.
Series/1 Realtime Programming System versions 1.0 thru 5.2 During version 1.0, I helped design and implement the job control language. For version 2.0, I was responsible for performance enhancement in the symbol table processing of the Macro Assembler. For version 3.0, I was responsible for the find/change portion of the full-screen editor. For version 4.0, I was a developer and team leader for the Command Language Facility, a predecessor of REXX. For version 5.0, I was responsible for all asynchronous communications drivers, especially the drivers for the IBM 3101 display terminals.
LACIE (Large Area Crop Inventory Experiment) for NASA Earth
Observation Division I was responsible for the implementation of the statistical distance computations for the main classifier task, then I designed and implemented the report processor for the classification component. During my last six months, I worked on the conversion routines necessary to support the attachment of high-speed array processor.
IBM Invention Achievement Awards
Patents
"Apparatus for Hardware Support of Software Color Cursors and Method
Therefor"
"Method and Apparatus for System Enhancement to Device Backup Font
Support"
"Method and apparatus for reducing image data storage and processing
based on device supported compression techniques"
"Method and apparatus for reducing image data storage and processing
based on device supported compression techniques"
"Apparatus and Method for Providing Access Rights Information in a
Portion of a File"
"Method, Apparatus and Computer Program Product for Efficient Per
Thread Performance Information"
"Method, Apparatus and Computer Program Product for Efficient, Large
Counts of Per Thread Performance Events"
"Method and Apparatus for Performing Raster Operations in a Data
Processing System"
"Portable Electronic Device with Adaptive Sizing"
"Omitting Forwarder Pages in a History List in a Browser"
"Method for enabling a client to specify the characteristics of an
image to be downloaded from a server"
"Limiting unsolicited browser windows"
"Apparatus and method for providing a user interface based on access
rights information"
"Enhanced readability with 'flowed bitmaps'"
"Method, apparatus and program to prevent computer recognition of
data"
"Selectively de-scrambling media signals"
"Operating system-wide sandboxing via switchable user skins"
"Method/system to speed up antivirus scans using a journal file
system"
"Removable storage media with improved data integrity"
"Instruction profiling using multiple metrics"
"System and method for collecting a plurality of metrics in a single
profiling run of computer code"
"Adaptive prevention of data loss during continuous event tracing with limited buffer size"
"Method and apparatus for providing backup font support for missing device glyphs"
"Displaying memory statistics for a keydrive"
"Method, apparatus, and program to prevent computer recognition of data"
"Displaying memory statistics for a keydrive"
"Compensating for instrumentation overhead using execution environment overhead"
"Call stack sampling for a multi-processor system"
"Call stack sampling for threads having latencies exceeding a threshold"
"Compensating for instrumentation overhead using sequences of events patents"
Publications
"Solving Problems Involving Variable Terrain"
"High Speed Display of Graphics Images Using Successively Greater
Refinement"
"System Stack for System Code"
"Random Floorplan Generation"
Published Products
Structured Basic Facility, versions 1.0 and 2.0Part of the Basic Programming Development System, published by IBM Corp, 1982. Version 2.0 was published as a separate product by IBM Personally Developed Software in 1985.This product was a full-screen editor and language pre-processor that enhanced the BASIC language through the addition of control structures and local variables.
Structured Assembly Language Utility, versions 1.0 and 2.0part of the IBM Macro Assembler and IBM MASM/2, published by IBM Corp, 1984 and 1986This product was a pre-processor that implemented control structures in Assembler language code without the overhead of macros.
Imperial Space Commandpublished by IBM Personally Developed Software, 1986This product is described later.
CTFORMATC/C++ and Text Formatter, part of the Developer Connection for OS/2, published by IBM Corp, 1993 to presentThis is a 32-bit OS/2 filter which formats C/C++, Assembler, and Text. It dynamically selects the kind of formatting to be done by examining the contents of the data. The text formatting uses hidden characters that allow output of one invocation to be the input of the next. Thus, it can be hooked into a variety of text editors.
THK2ASMThunk Compiler for OS/2 Warp, part of the Developer Connection for OS/2, published by IBM Corp, 1995 to presentThis product provides an easy way to produce efficient interface code to enable the use of old 16-bit applications within the 32-bit OS/2 system.
Game Related HistoryPlayer of historical conflict simulations since MAR 1965. I have a personal library of nearly 150 board games. Player of role playing games since Fall 1976 with experience during at least 6 years of that time as a game master, first for Dungeons and Dragons, then GURPS. Player of Go since Summer 1986 and member of American Go Assocation, #3297, ranked 8 kyu. I have a personal library of more than 40 books on Go in both English and Japanese. Founder of IBM Simulation Games Club, Houston, TX, JUN 1974. Founder of IBM Simulation Games Club, Boca Raton, FL, JAN 1976. Founder of Boca Raton Go Club, Boca Raton, FL, Summer 1987. Owner of the Game Design Forum on the IBM internal networks since Fall 1992. Charter member of the Computer Game Developers' Association, Fall 1994, #1994-0446. Attendee of the Computer Game Developers' Conference, Santa Clara, CA, APR 1994. Attendee of the GamePC Consortium, Santa Clara, CA, OCT 1994. Attendee of the Computer Game Developers' Conference, Santa Clara, CA, APR 1995.
Game Development ExperienceUBoat, 1972 Single submarine and destroyer implementation of U-Boat by Avalon-Hill Company. This game was originally written in APL for the IBM System/360 and was later ported to BASIC on the Apple II, then the IBM PC. Pinochle, 1972 Two-handed Pinochle with a computer opponent. This game was written in APL for the IBM System/360. Cruiser, 1974 Full implementation of CA by SPI, with a computer opponent. It was a simulation of World War II surface naval combat with multiple scenarios. This game was written in APL for the IBM System/360. TimeTrap, 1976 An implementation of the multi-player time travel game by Flying Buffalo. This game was written in APL for the IBM 5100. Dungeons, 1977 A role playing game based on Tunnels and Trolls. This game used a natural English parser and supported up to 4 characters in a randomly generated dungeon. It was originally written in APL for the IBM 5100 and was later ported to Structured BASIC on the IBM PC. It was considered for release with the first IBM PC, but was dropped because there was no way to treat IBM employees as ISVs. EnGarde, 1979 Implementation of the Fencing simulation from the game En Garde by Game Designers' Workshop. This was written in Structured BASIC for the Apple II and later ported to the IBM PC. Imperial Space Command (ISC), 1983 to 1986 A multi-player game of space exploration, colonization, and conquest based on my own design of a paper and pencil game that was frequently played by the IBM Simulation Games Club in Boca Raton, FL. A crude version of the program was developed in BASIC on the IBM 5100 and ported to BASIC on the TRS-80 by Ed Kiser of Coral Springs, FL. He later redesigned it and wrote it in Structured BASIC for the IBM PC. My contribution was the design and implementation of the full-screen user interface and the computer player, which can replace any or all of the eight players. The game was published by IBM Personally Developed Software in 1986, and is still played today on a number of computer bulletin boards around the country. GoBoard, 1986 and 1994 An automated Go board that was written in C for the IBM PC. It validates moves and captures, but does not play. It was rewritten as a 32-bit OS/2 PM application using C-Set++ for OS/2. ISC2, 1992 to 1994 This is a totally redesigned version of ISC written in C-Set++ for OS/2. It features a game definition language that allows the game to be configured as ISC or any other game of that genre. I completed the game engine and the ISC personality in late 1993. A game definition editor and user interface was being developed by others in Boca Raton. That work and my own work on a computer opponent were halted due to the development of OS/2 Warp. This work was used as a Beta test of C-Set++ for OS/2. XComUtil, 1995 to 2005 A combat enhancer for XCOM: UFO Defense and XCOM: Terror from the Deep, by MicroProse, and UFO: Enemy Unknown by Mythos. It consists of a collection of patches and utilities for the entire line of XCOM games. All features are the result of data patches, not the modification of code, except for a one-byte patch to fix the Difficulty Bug in XCOM that MicroProse refused to fix. XCOMUTIL allows you to view, modify, or add opponents and their equipment, dynamically set the difficulty level, redesign the ships, and even switch sides with the aliens, allowing XCOM to be played in two-player hot-seat mode. Version 7.0 added the ability to randomly redesign each alien ship after each combat. This program was developed using C-Set++ for OS/2 and recompiled with Borland C++ for distribution to DOS users. The latest version is available from my XcomUtil Homepage. ApocUtil, 1997 A combat enhancer for XCOM: Apocalypse by Mythos, distributed in the U.S. by MicroProse. It performs some of the same types of functions for XCOM3 that XCOMUTIL did for XCOM1 and XCOM2. All features are the result of data patches, not the modification of code. APOCUTIL allows you modify the number of aliens on ships and the availability of equipment, and It can also be used to randomly modify weapon effectiveness to make the start of the game more challenging as you struggle to find which weapons work against which aliens. This program was developed using Borland C++ for distribution to DOS users only, since this game does not run under OS/2. This program is available from my XcomUtil Homepage. Star Wars: The Old Republic (SWTOR), 2010 to 2012 An MMORPG based on the Star Wars universe with activity occurring 3000 years before the movies. SWTOR was developed by BioWare, a division of Electronic Arts. I was responsible for development of the Automaton, an automated player capable of testing the game and substituting for testers in group content. This page was last updated on 18 JAN 2013. Author |