mailto:ptmcg at austin dot rr dot com homepage: http://www.geocities.com/ptmcg I am a systems consultant, having worked in various manufacturing-based capacities since 1980, with a strong computer software slant since about 1983. Over time I've worked in various computing languages (FORTRAN, Basic, Pascal, Forth, PL/1, Smalltalk, COBOL, C, C++, Java, VB, Tcl, and lately Python, with which I am becoming greatly enamored - roughly in that order), on different platforms (IBM 360/370, DEC PDP-11, Timex Sinclair ZX81, Commodore 64/128, VAX/VMS, DOS, Windows and its ilk, PalmOS, and lately Linux - again, roughly in that order), mostly with applications oriented to manufacturing control or tracking or information management (production tracking, work instructions, process planning automation, machine program management and download, scheduling, statistical and run-to-run process control). I feel that manufacturing has both mundane application needs, but also non-trivial challenges in terms of user accessibility, time-criticality, performance, and reliability. When a particular system has been deployed, or bug fixed, or enhancement installed, it is quite a thrill to walk out into the factory and see it running, or to walk into the breakroom and see your graph outputs on the bulletin board (especially if someone has highlighted something on the graph with a note "Great Job!" or "This explains trouble on Machine 12!"). In the larger picture, I feel that our shift in emphasis from a manufacturing-centric economy to a service-centric one is flawed - manufacturing creates wealth, creates tangible goods - services are much more ephemeral, and have a much lower barrier to entry. As a hobby, I've also pursued/indulged/dabbled in programming with some special areas of interest: * Fractal graphics - My little program Frmesh has been included in several script and tool compilations, and has been ported from Pascal to C to C++ to Java to Palm/C; it is my own version of HelloWorld, but less trivial in content, that I have found useful as a toy application for trying new computing languages and environments. * Interactive graphics - Frmesh is mildly interactive, but I have also done some simple but fun programs for symmetric sketching and crude (as in "unsophisticated," not as in "pornographic") animation. * Parsers and LittleLanguage''''''s - I seem to be drawn to this area again and again, either in implementing simple expression parsers, or report scrapers, or miniature query or command languages. I've applied this concept in several places where I was able to provide some simple user-extensibility to an existing system, with great success. One case was in providing user-defined pre-calculations for SPC charting, so that an SPC chart would track a computer-calculated value instead of raw data values - for instance, an operator might measure force and area, but stress (force/area) was the actual value to be controlled. This doesn't sound like much (mundane, even), but it allowed the operators to get rid of the calculators next to the computer keyboards, improved the quality of the data (automated calculation vs. repeated data entry and hand division), and streamlined work for everybody. (I've taken this another level up, and published a Python class library for creating and executing context-free grammars, downloadable from SourceForge at http://pyparsing.sourceforge.net.) * Recreational mathematics - Probably the most presumptuous of my dilettanteries, I find myself going back to old ground every so often: PrimeNumber''''''s, or the TravelingSalesmanProblem. But these also afford me good opportunities to explore new computing languages, with problems I am familiar with. I live in Austin, Texas, with my wife and two children. I completed my Masters degree at UT in '02 (in Digital Control Systems Engineering - I implemented a digital system simulator using VBA in Excel), and am now part of a small manufacturing systems consulting group, specializing in semiconductor manufacturing advanced process control. One of my friends is SteveMetsker - when we worked together in Maine, we would occasionally pose each other some math problem, or try to take a described solution and generalize it, or otherwise pick it apart. I typically found that I was often on the side of BruteForce, for which I make no apologies. Lastly, here is a bit of doggerel (with apologies to KurtVonnegut): Tiger got to hunt, Bird got to fly, Man got to sit and wonder "Why? Why? Why?" Tiger got to sleep, Bird got to land, Man got to draw himself UML diagram. ---- CategoryHomePage