Dr. Computer
19426 63A Avenue
Surrey, B.C., Canada
(604) 533 - 6736
town...@uniserve.com
http://users.uniserve.com/~townsend
EXPERTISE:
Management Consultant
Systems Analyst
VB / Windows Programmer
EDUCATION:
UNIVERSITY OF CALGARY
Major: Management of Information Systems Minor: Economics
MICROSOFT UNIVERSITY
Microsoft Certified Professional #1987
Certified Professional for MS-DOS and Microcomputer Hardware
Certified Professional for Windows
SKILLS:
(Chronological Progression)
Software Languages:
Basic, Command Line Batch Processing, Pascal, C, C++
CASE, Programming Tools and Applications:
Cassette Basic, Visicalc, Lotus, DB, Quick Basic, MicroEmacs, Scred,
SPSS, Turbo C, MS Assembler,
Watson Voice Batch, MS C, MS SDK, MS Windows for Pens SDK, MS MultiMedia
SDK, MS C++,
WindowsMaker C, Turbo Pascal, Quick C, Excel, Word, Visual C++, Visual
Basic and Access.
Hardware Platforms:
Motorola 68xx, s100 boards. Intel x86 family including 80: 86/88, 186,
286, 386sx/dx, 486sx/sl/dx, P5.
Valid Vax/PC. Dec VAX.
Operating Systems And Networks:
Cassette Basic, Valid DOS, Xenix, Unix, DOS. Windows environmental
overlay. Novell, DSC Nexos, MS
LAN Manager, WinNT, WFW, Win95. Have use all versions of MS-DOS since
version 2.0, all versions of
Windows including 1.0, 2.0, 286, 386, 3.0, 3.1, 3.11, WFW3.1, WFW3.11,
WFW32s, WinNT, W95. I
have beta tested software for Microsoft since 1985. This has included
all versions of Windows since W286
and such diverse products as Windows for Pens Computing, Visual C++,
FORTRAN Powerstation and
Visual Basic.
Software Add-Ons And Vbx's for Visual Basic:
Microhelp's MHComm and Fax Libraries. Ward System's NeuroWindows DLL's
for Neural Networks.
Stylus's Visual Voice for Telephony. Distinct's Visual TCP/IP for
Windows Sockets. Micro Systems 3D
application tools for 3 dimensional modeling. The vbasm.dll for
assembler routines, message tracking, etc.
My Funcy function database for cataloguing functions and sub routines is
excellent for quickly accessing
re-usable modules, and I have a little public domain utility that is a
user programmable interface for
declaring functions, types and global constants.
EMPLOYMENT PROFILE:
August 1992 - present Dr. Computer
Windows Programmer - Owner
Primarily employed as a Windows Programmer, but am involved with General
Computer
Consulting as well. Troubleshoot Hardware and Software in the DOS /
Windows
environment. I have written a number of Windows Programs which I am
currently
marketing. Started Dr. Computer when I moved to Langley in August 1992.
My
development system includes a WinNT 3.51 Server, 3 W95 and WFW nodes and
a JetBook
laptop running W95 with VB4 for on-site programming. I like to ensure
my applications
run on all versions of Windows whenever possible.
June 1990 - July 1992 Computer Systems Plus Inc.
Systems Specialist - Owner
Windows Programmer / General Computer Consultant. Custom Assembled
Computer
Systems and Interfaces. Provided programming services to a number of
Corporate
Accounts. (CCH Canadian Ltd., Minatco Mining Ltd., T. Lamb Oilfield
Consulting,
Blomqvist Publishing) Lost accounts during economic downturn and
subsequently closed
the doors.
January 1987 - May 1990 Student Hacker Unlimited
Programmer - Owner
Started as a part-time business to support my family while I attended
University. Provided
computing services to faculty staff and members. Primarily spreadsheets
and graphs.
Assembled computers with a custom written environment. Incorporated to
Computer
Systems Plus Inc..
June 1985 - August 1987 TNT Contracting
Renovation Contractor - Owner
Energy Efficient Renovations Contracting / Building Inspection.
Specialized in Accessible
Housing and Energy Efficient Additions. Three quarters of my contracts
were with Alberta
Mortgage and Housing Corporation. Sold business to employees when I
started University.
November 1981 - May 1985 I.B.P.A.T.
Journeyman Painter and Decorator
Commercial and Residential Painting Contracts with the International
Brotherhood of
Painters and Allied Trades Union. Worked mostly on Mega-Projects.
Foreman for IPASCO
at Revelstoke Dam, Line Creek Coal Mine and Sheerness Power Station.
April 1976 - October 1981 Western Steeplejacks
Supervisor - High Rigging / Painting
High Rigging and Gas Plant Maintenance. Stacks, Masts and Tower
Erection and
Demolition. Industrial Sand Blasting and Spray Painting, Swing Stage
Rigging and
Scaffold Erection. Ran three crews of up to 15 people. Since much of
this work was
sporadic, I also had a part time job teaching ball room dancing for Fred
Astaire Dance
Studio where the owner was a good friend of mine.
POST SECONDARY EDUCATION
Microsoft University Certified Systems Specialist
(1992)
University of Calgary Management Information Systems / Economics
(1987 - 1990)
Southern Alberta Institute of Technology Renovations
(1985)
CERTIFICATES:
Microsoft DOS / Windows - Hardware & Administration
Journeyman Painter & Decorator Spray Painting / Exotic Coatings
C.M.H.C. Dwelling Inspection C.M.H.C. Specification Writing / Cost
Estimating
C.M.H.C. Energy Conservation C.M.H.C. Project Management
C.M.H.C. Certified Renovations Contractor Private Plumbing
Inspection
Swing Staging / Scaffolding Explosive Actuated Tools
PROJECTS:
Since I am a home based consultant in a small town, my clients have
tended to be small to medium sized
businesses. A predominant feature of these is a general lacking of the
finances of larger corporations,
hence, many of the projects I have taken on have tended to be
discontinuous but ongoing efforts enacted as
the personal finances of my clients have allowed. A subsequent request
from my clients has been for
services of a general rather than specialized nature. With this in
mind, following is a brief synopsis of a few
of the projects I have been involved with, and the services I have
rendered in the last few years.
Horizon Fiberglass:
General computer maintenance. Rebuilt and optimized office system as
well as updated software. Custom
assembled new system and installed WFW with 32s extensions and RAS
Server for remote access. Both
systems are running Speedy Operating System, the user programmable shell
I wrote in VB. Programmed
custom Access database for Order Entry, Inventory and Cost Estimating.
Also developed a VB front end for
the data base and a custom menu system designed to automate the process
of data base file maintenance.
Further development on this system is not planned until the spring of
1997 as the company is currently
renovating and expanding its offices.
J.M.S. Contracting:
Built custom computer system and programmed a Menuing system as well as
a custom invoicing system in
Visual Basic. Also customized SpeedyBase and extended Access database
to accommodate customers
specific needs. Regular maintenance on machines.
Jet Countertops:
Built custom computer system and programmed custom interface in VB.
Programmed custom invoicing
system. Programmed application to produce a cut list for custom
cabinets. Have provided tutorial services
for Word and Access as well as regular maintenance.
Larry O'Countertops:
Built custom computer system and designed software interface (shell) in
VB. Programmed macros in Word
to autocompose letters and print envelopes from the SpeedyBase database
I installed on their system.
Regular computer maintenance.
Hil-Ron Construction:
Have built four systems and networked them using WFW. Systems are set
up with my S.O.S. shell and are
using SpeedyBase. Regular computer maintenance.
Broadway Pentecostal Church:
WFW network system installation and maintenance. Systems us S.O.S.
shell. Also custom built dual
monitoring system to display scriptures and hymns through projection
system. Connected midi equipment
to main monitoring system for simultaneous remote control from
operations console. Regular computer
maintenance.
CCH Canadian:
Assisted representative by installing Canadian Income Act Tax software
on existing clients systems.
General troubleshooting skills involved. Also served with this
gentleman, Les Kaluzny, as a director of the
Reform Party S.E. Constituency.
Reform Party, S.E. Constituency:
Served as a director and also as Chairman of the Computer and Data
committee for 14 months. Wrote
custom databases using WindowsMaker and Xerox Formbase to track
constituency members and dues.
Trained volunteers in the use of Windows and maintenance of the data
base. Wrote spreadsheets in Excel
and macros in Word to automate the process of mail merging and
addressing envelopes. Developed
automated voice system to dial up constituency members and disseminate
general information and details on
events such as town hall meetings.
PERSONAL:
I have finished all of my core management courses for MGIS and have a
strong standard
theoretical knowledge of computers in hardware and software, data
storage, information
archival and retrieval and automated system programming. I am
ultimately interested in
using some, or all of the code I have developed into an integrated
environment and interface
for information systems and data management.
I have a network messaging system called SpeedyNet that I developed to
overcome interface
problems on a WFW configuration connected to Win 3.1 and running on
Novell, it is
integrated with W95 and WinNT as well. It is designed to be integrated
with SpeedyBase,
my automated database for Windows which uses Caller ID to automatically
identify
incoming callers.
I am a member of Northern Telecom's Business Affiliate Program.
SpeedyBase is listed in their Solution Providers Catalog. I
actively beta test hardware and software and have written code modules
for a number of
companies; Microsoft, MicroHelp, Northern Telecom, Rockwell
Technologies, Allo
Communications, DSC Communications, Ven-Tel Communications, Vive
Technologies and
Zoom Telephonics.
SOFTWARE I WRITE IN VB AND MARKET:
S.O.S. - Custom Shell for Windows. A lot of useful features. Very handy
for WFW.
SpeedyBase - Talking Database for Windows. Uses Caller Id to tell you
who is calling.
House Inspector - A house inspection program for producing a custom
report.
GST/PST Calculator - Calculates taxes, margin/markup, exchange
dynamically.
KeyCodes - Explains 8 bit system, returns Key Codes for programming.
KeyAscii - Ascii, Hex, Octal, Decimal and Binary conversion tables.
Crystal's Xmas Tree - Talking Xmas Tree decorating program I wrote for
my kids.
Computer Clinic - Computer maintenance and troubleshooting program.
Pandaemonium - Screen Saver. Very interesting algorithm for graphic
entertainment.
Funcy Database - Database to catalog code modules for VB,Access, Word
and Excel.
Xhouse 1.0 - CP290 -x10 control module software for turning lights on
and off, etc...
I have quite a few other programs as well that I have never had time to
fully develop and market or are only
for my private use as a consultant for troubleshooting, etc...
GENERAL OVERVIEW:
Having always run small businesses and lacking the economies of scale of
mass marketers, I have never tried
to compete in the cut throat low end computer hardware forum. Instead I
have concentrated my efforts in
this area to building performance oriented, commercial quality
computers. In the last ten years I have
assembled over two hundred of these custom computers, many with a custom
written interface. My products
have a decided appeal to those given to a preference for performance,
quality and luxury products.
I have always been a hands on type of individual. I assembled my first
computer from a kit I ordered in a
Popular Mechanics magazine in 1973. Since then I have owned and worked
on a wide array of computer
systems. I have enjoyed programming for the last twenty years. First
as a hobby, then in my own
businesses. Since there were few programs around when I first developed
an interest in computers,
necessity demanded I learned to program them myself and I have become
adept at integrating information
and methodologies. If I don't know how to do something, I can guarantee
it will not take me long to figure
out how to solve the problem. Upon entering university I began building
computers and programming
professionally. Although I have programmed on a diverse array of
systems from mainframes, such as the the
Valid and Dec, to home pc's such as the Vic20, C64, CoCo and TRS80, I
have been enamored of IBM
compatible desktop systems since they were first introduced and am very
proficient with hardware assembly
and troubleshooting.
I have programmed in numerous environments that are now obsolete, and
indubitably boring to list. Given
that there is nothing so obsolete as yesterdays computer, I will only
mention my current programming
environment here. I make an concerted attempt to stay abreast of
current technology both with hardware and
software.
I am currently developing applications on a network consisting of a
WinNT 3.51 Server (486) and nodes
consisting of WinNT 3.5 Workstation (486), Win95 (Pentium) and WFW
(386). My laptop is a 386sx
running on Win95. Included is a wide array of peripheral devices
including an automated voice messaging
system, scanners, cameras, sound cards and CD's, musical keyboards and
synthesizers and a variety of print
devices.
My software development environment includes Visual Basic, Access, Word,
Excel and the Windows SDK,
Visual C++, and Fortran Power Station. I use Visual Basic for DOS and
Visual C++ to create DOS
applications. My preferred CASE Tool for creating Windows applications
is Visual Basic. One thing I
have done that I missed from the C environment is to install a secondary
mono monitor on my W95
computer to debug my applications. This is very handy and I much prefer
this to the standard debugging
window.
The first version of VB bore a remarkable similarity to WindowsMaker
which I really liked using and was
the impetus for further investigating the possibilities of the
application. I thought Quick C was an excellent
CASE tool, though not as efficient. In actual fact I was somewhat
disappointed in Visual C++ 1.0 and
preferred to use it to program in C. Since it was difficult to create a
single document interface with VC++
1.0, I developed a C code generator in Visual Basic to create a C code
skeleton application and then
completed and compiled the applications in VC++. I still use my
skeleton code generator to create C
applications, although I much prefer programming in VB.
I have developed applications in all four versions of Visual Basic.
However, even though VB4 is capable of
developing 32 bit applications and DLL's, I am not much enamoured of the
baggage overhead of a finished
application. Even a small application that compiles in under 50K must
be distributed on a minimum of two
disks because of required run time modules. As a consequence, I still
use VB3 to create applications for
distribution. A lot of the features of VB4 are excellent though, such
as OLE and the data aware controls.
I have a fairly large collection of add ons for VB, but generally prefer
to use DLL's to VBX's. The majority
of third party vbx products on the market are unneccesarry complications
to the environment, but some are
very good. Some of the best that I have used include Stylus' Visual
Voice for TAPI compliant applications,
Microhelp's Comm and Fax controls for communications and fax
applications, Distinct's TCP/IP and
Micro's 3D application tools for 3D interfaces.
Obviously the ability to use DLL's in the VB environment means that the
entire API is at your fingertips.
Some of my favourite add ons are very good public domain modules. I
have a vbasm.dll which allows me to
include assembler routines and extends the VB environment to include
powerful functions such as the
ability to peek and poke individual bits to the registers. I am also
much enamoured of an application by
Periscope called Winscope. Since Microsoft does not document all of
their API functions, this can be very
handy to not only discover all available API functions, but to look
inside third party DLL's as well. For
instance, I used this to use the test-to-speech capabilities of First
Bytes Monolog utility when I found the
modular interface to be a little clumsy to use. It is far superior to
the Spy utility that Microsoft includes
with the SDK.
Having long been intrigued with Artificial Intelligence, I am really
impressed with Ward's NeuroWindows
DLL for developing Neural Networks. I confess to be less than
proficient with AI, but dangerously
intrigued. (I actually took a couple of psychology courses and a
linear/parametric programming course in
economics while I was in university to augment my skills and
understanding of this fascinating topic. What
I have always found so intriguing is the lack of a need to rigorously
define inputs and the inherent ability to
determine causal relationships.) Unfortunately I have never had the
opportunity to use these tools in a "real
world application", but have achieved some intriguing results in a
number of applications that I have
experimented with. Not trusting my own intellect in this arena where
some of the quantum wave functions I
have emulated beggar the intuition, I have developed some interesting
algorithms for 'self-sensitizing' the
nets and automating the process of determining optimal levels of
training as well as determining design of
slabs and causal neural inputs.
I have used the Internet for the last ten years, which I was initially
attracted to because of my interest in
cosmology. I am very familiar with email, news, irc and a number of
utilities. Until recently I had my server
running as a Web Site, but found the maintenance and cost to be
prohibitive for the actual benefit derived. I
was using O'Reillys Web Site Server, which I highly recommend. A
predominant feature of this is a CGI-
WIN interface which allows forms processing applications to be developed
in Visual Basic. I have written a
number of Web Pages and find HTML quick and easy programming.