Develops and markets products using "Assistive Technology".
Developed updated hardware for an updated version of the
InfoGrip BAT.
The orginal design consisted of microprocessor, eprom,
battery backed RAM, on two separate circuit boards
(right and left handed). The original version took a
man-year to program. Our modern version consists of
a one chip solution which implements a USB interface,
fits on "flipable" circuit board for right and left
handed versions. This product required two man-months
for all hardware and software development. Key technologies
used are:
PIC microprocessor
CCS C compiler
USB implementation compable with standard USB HID
device class.
Develops and manufactures software for Electronic Design Automation.
This project consisted of developing a custom addition to the
Boost Serialization Library to support
portable binary archives. Cadence is a use of Boost libraries
and uses this extension in one of its verification products.
Develops & manufactures embedded systems to serve the automotive service industry.
This project was a telematics application. That is, it consists of modules with
radio modems installed in vehicles which continuously connect to a central
server via GPRS protocol. The central server can than monitor in real time the
position and diagnostic status of all vehicles in the fleet.
The major aspects of this project include:
USB Device drivers
Embedded system using Motorola 68331
C programming language Multi-Threaded application
Motorola G.18 and G.4 Radio modems for GPRS connection.
Develops & manufactures the world's highest resolution Atomic Force Prober (AFP).
Wrote C++ code integrate Multi Probe's next generation hardware with the
widest possible variety of application software including .Net languages, TCL/TK,
Python and others. Tools used include:
Procore provides contractors with software and services that improve
the efficiency of construction projects. Wrote code to embed Microsoft
Project into the the Procore website. This permits Procore to seemlessly
integrate Project update and edit with other services that Procore offers.
This used a combination of VBScript, ASP, MS Project Object model scripting.
Boost.Org is an organization dedicated to providing peer reviewed C++ libraries
that provides advanced features for C++ programmers. These libraries are distinguished by:
High quality - before being accepted as a boost library, candidates
are subjected to an extremely rigorous peer review system to assure
utility, correctness, and elegance of design.
Portability - all boost libraries are subject to testing
on a variety of compilers and operating systems.
Correctness - exhaustive test cases for each library
Power - many boost libraries use advanced C++ features such as
template meta-programming to make libraries more flexible and powerful.
Breadth - the code base in the boost libraries is extremely large
and varied.
My submission - the Boost Serialization Library has been
accepted into boost and should appear soon as part of the official boost release.
Design and implementation of test station software to test infrared sensors
under conditions of extreme temperature and vibration. This application was
written in Visual Basic and used, COM, captured Video, ADO database connectivity
among other things.
2001 Reactive Sputtering Inc., Santa Barbara
Implementation of Windows graphical User interface programs to control proper
flow of gases in a sputtered coating system system. Used C++, MFC, ATL COM Objects,
mult-threading, serial communication and STL.
Design and implementation of a new GUI for the world's most powerful
microscope. This was built with Microsoft VC++ with heavy reliance on
MFC. It incorporates hundreds of thousands of lines of code used to operate
the microscope hardware. Taught MFC courses for 15 programmers.
Design and implementation of a COM automation object to permit the reading
and editing of data tags (song title, etc) on MP3 files from either Visual
Basic or VBScript. This COM object can be embedded in web pages and automatcally
downloaded to the client system. It can then be invoked to edit the
data tags embedded in MP3 files.
Santa Barbara Software, LLC is partnered with
Wavexpress, Inc to deliver rich content-movies, music, sports, news, computer games,
software-over a digital broadcast signal direct to any DTV-enabled PC.
Wrote the client side user interface application in VC++ with MFC. This consisted of
a GUI control frame in which an instance of the Microsoft Internet Explorer COM object
was embedded. COM interfaces where designed into the application so that
javascript within html pages could invoke functions implemented by the application.
This application also used OLE DB and the Microsoft Jet database DLL to access
a local data base used for transation logging and other tasks.
Design and implementation of programs to test and benchmark various searching
algorithms. This was implemented using the STL templates from the C++ Standard
Library.
Design and implementation of Win 32 applications for uploading and
manipulating data files captured by a hand held vehicle monitoring
device to a PC via a serial port.
Data is uploaded to a directly connected PC or to a stand alone program via
telephone line and modem. The Telephone line monitor application functions
without operator interaction to save data to disk files. Up to four
phone connections can be handled simultaneously.
File viewer application permits viewing, graphing, saving to disk, emailing files
uploaded from the device, or selected from Windows file explorer or from
on WEB page links.
The file viewer was integrated into WEB pages via Microsoft Explorer Internet
Component Download service. Web pages can include special HTML tags
which cause Internet Explorer to determine whether the latest version
of the application is installed on the users machine. If not, and
security settings permit it, the application is automatically downloaded,
and configured for the users environment. Henceforth, web pages could
contain links to these types of data files on any server on the WEB.
All national language dependent resources are held in separate
DLLS which permits switching between languages while the program is in
operation. The program starts with the language specified by the current
user in the Windows 95 settings. Languages implemented were English, Japanese and Spanish.
When directly connected to a hand held
vehicle monitor this application can graph vehicle
operating parameters in real time. Real time data can be captured to
disk files for later use.
Applications operate under Win 3.1 via Win32s.
These applications are being deployed by American and Japanese Honda
Divisions and Toyota Corp.
1997 Engelhard Corporation (now Telaire), Santa Barbara
Design and implementation of a program to control a telemetry "black box"
through a serial port. This program downloaded and stored and accumulated
data such as temperature, relative humidity, CO2 concentration etc, and
graphed the results. Also implemented real time graphing of data. This
product is part of a sensor/telemetry package sold by Engelhard. Used an
off the shelf graphing OCX and Visual Basic.
Demo Available
1997 Dega Technology, San Luis Obispo
Development of a specialized browser for a CDROM database to be sold to
companies in the chemical industry. Used Visual Basic to tie together OCX
graphing control
and Jet Database Engine queries. The database itself was prepared/maintained
with Microsoft Access.
Demo Available
Adaptation of General Software BIOS for an embedded PC designed to
host DOS Telephony applications. Required implementation of pseudo
drivers to emulate non existent hardware in order to make the platform
totally PC compatible while requiring the absolute minimum of hardware.
Written in Microsoft Macro Assembler.
Programming of a special purpose file editor which builds
configuration files to be downloaded into a hand held microprocessor
driven automobile diagnostic device. This is a Windows Application
written with Borland C++ 4.52. This program consists of about
6000 lines of C++ code which makes heavy use of the Borland OWL library.
It was delivered in about 10 weeks.
1995 McCann-Erikson, San Francisco
Programming and implementation of a WWW site for the online
registration of magazine subscriptions. Web surfers through
the Hewlett-Packard web site can learn about and subscribe
to the new HP Magazine "networked!" through this site. This
applications gathers and validates the data from the user,
and downloads on demand to the subscription fulfillment
company. This applications was written in PERL 4 and runs on
an Linux server.
Demo Available
Development of a database application for the World Wide Web.
This takes information exported from a database and generates
standard and custom web pages that can be loaded to a Web Server
as a group. It has been used to generate thousands of Web pages for
organizations such as the Direct Marketing Club of Southern California
as well as others.
1995 Santa Barbara Regional Health Authority
Development of a DOS TSR that works a telephone speach
system to deliver results of a data base inquiry over
the telephone. Uses TRT Provide telephone application
development system, Wollongong TCP/IP stack, Borland C/C++
and an implementation of a unix style sed editor to
translate text into spoken sentences.
Implementation of Postman's Sort on HPUX, and SCO Unix.
This program is used on EBSCOS Text Retrieval Server. It
is a Unix implementation of the Postman's sort retail
product which they have also licensed for inclusion in
EBSCO's CDROM package for DOS.
1995 Parnell Systems, Santa Barbara
Design and programming of a student scheduling program. This program
considers student course requests and priorities as well as teacher
skill set. The algorithm developed is a variant of a classic linear
programming assignment algorithm. Formulating the problem in this way
permitted me to demonstrate that the algorithm might converge in a
reasonable time.
This was developed and implemented under Windows/NT using MFC to
build a testing/demo framework.
1995 Durand Communications Network, Santa Barbara
Implementation of Fax Receive for Class I, II, and 2.0 Modems under Windows
3.1 . This was integrated into the Filexserver retail product.
1994
Completion of Filexserver. This is a program written in Visual C/C++ which
is distributed as a retail product. It acts as a file transfer similar to
Laplink, a BBS and as a Fax receive station under Windows.
Can handle upto 12 communications lines.
A general purpose linear time file sorting program. This was the subject
of an article published in the C Users Journal and later sold as a
commercial product through Programmer's Shop and Provantage.
This was implemented for Windows/3.1, Windows/NT, UNIX and OS/2.
A screen saver featuring 3-D animation. This was developed under contract
as a commercial product.
1990 Jib Ray Inc., Ojai
A conveyor system built from autonomous inter-connected
computer controlled motors. Among other things this required construction
of a code translator with the Unix M4 tool to work around problems
with the motor's native code.
1977-86 Datatec C.A.
Founded and operated Datatec C.A. in Guayaquil, Ecuador This company
supplied general business services such as General Ledger, Accounts
Receivable, etc. to foreign and domestic companies of all types and sizes.
Datatec grew to be the largest data processing service in Ecuador with more
than 130 customers. Was directly responsible for all aspects of
the business including hiring/discharge of employees, financing,
accounting, training of sales and customer service personnel. This
was in addition to writing all the software to support this
service accomplished the following:
Porting of a C Compiler to the Data General C-350.
Design and programming of a multi-tasking system used for trading
foreign currency. This was written in RATFOR as C was not
available for the indicated machine at the time. On the strength
of this application the company was sold in 1986.
An interrupt driven execution time profiler written in C for
MSDOS computers.
Numerous utilities written in C for MSDOS.
Numerous business applications written in COBOL.
Enhancement of structural engineering applications written in
FORTRAN.
Async communications to link micros and mainframes written in
two different assemblers. Eventually this was replaced by porting
an XMODEM protocol program to both of the machines.
Education
1969
B.S. Business, University of California at Berkeley.
Studied engineering, economics, finance, and operations research.
1970
M.S Business, University of California at Berkeley.
Studied operations research and finance.