- Software architect
- Professional software developer specializing in scientific/engineering applications
- Senior Research Fellow, Department of Systems and Computer Engineering, Carleton University
- Author of Visual C++ Unleashed and other computer books
- Author of over two dozen scientific papers on topics in theoretical physics
Who I am
I am a software developer and author of computer books. I also work on some problems in theoretical physics. This is my personal Web site where I publish information about myself:
- My work, programming in C/C++ and other languages, for Windows, Linux, and other operating systems,
- The books I wrote, about C++, Linux, and more,
- My physics papers and notes,
- My Web site dedicated to vintage programmable calculators,
- The world's first Multi-User Dungeon, which I ported from BCPL to modern platforms and still maintain,
- My knowledge base of diverse technical notes,
- And links to other sites, including Web sites of my own.
My professional experience
I received my first software development contract in 1979: My task was to simulate the take-off distance of TU-154 aircraft with engine failure at Budapest airport under various weather conditions, to compute tables of maximum take-off weight. Since then, I worked on many software projects and I am thoroughly familiar with the entire software development life cycle. I authored or co-authored studies for large software projects (for instance, I was one of the authors of the Automation Master Plan of the Canadian Patent Office in 1988); I designed and developed the Windows version of Industry Canada's Integrated Spectrum Observation Centre, with over 120,000 lines of C++ code; and I created NORTEC's HELP (Humidification, Engineering and Loadsizing Program), an application for professional engineers and salespersons dealing with large-scale building humidification systems. I also wrote several books on the C++ programming language and the Linux operating system. As part of my scientific research, I independently developed a precision orbit determination program used to analyze the anomalous trajectory of the Pioneer 10 and 11 spacecraft. I am also one of the maintainers of Maxima, the preeminent open source computer algebra system.
I am just as competent with modern software development technologies as with ancient systems. I routinely switch between developing an interactive app for my Android smartphone and maintaining 30-year old legacy LISP code for Maxima. I am familiar with formal software project management and development methodologies. Last but not least, I also have experience designing and debugging hardware.