Museum

As a child, I was always fascinated by computers, and especially the idea of computer programming. My father completed his masters' degree in computer science when I was very young, and I still remember him "hacking" away on the old green-screen PC. At the age of 13, I asked my dad to teach me computer programming. He agreed, and although he didn't have a lot of spare time to tutor me, he gave me a thick book on Turbo Pascal, and answered my questions. I read some, and worked through the example code, using the compiler and toolkit he had installed on the family computer. At that time, we had an older PC with a 286 processor and a 16 color EGA monitor. Although Windows 95 was becoming popular, our home computer, and hence my early programming experience, was entirely in DOS.

I was fascinated by all different aspects of the computer programming, but I soon tired of the book examples and struck out on my own, experimenting, trying new things, whatever I could think of. Starting out, I didn't even know how to type! My mom tried to make me learn typing on the "typing tutor", and I did work at it, but was easily bored, so I learned most of my typing skills tediously hacking out pascal code. I was especially fascinated by graphics, animation, and music, but in order to write the programs, I had to solve physics problems and other mathematical challenges I hadn't even dreamed of until then. Having only the mathematical background of a typical gradeschooler, I would spend days grappling with problems far beyond my mathematical knowledge. Amazingly, I would eventually arrive at the solution, through much trial and error, and sometimes using unconventional methods.

At the time, I was simply building, experimenting, and trying and trying again to make various things work. I remember writing programs that now I have no copy of - I'm sure I modified the program into something else, and the original is gone. I wish, too, that I had kept more accurate records of the dates that I started each program, and some of my reasoning processes and steps that I had tried. But I do have the source files, and the last modified time stamp tell, as the very least, when I either completed or lost interest in a particular program.

The goal of this page is to showcase some of my earlier work, mostly for my own records, but also for anyone who may be interested.

Licensing
Much of my original software was not written with the intention of distributing it publically, and as such there is no indication in the source file of authorship, copyright, or license. In some cases, I had the idea that, perhaps, I could make a little money by "selling" the software as part of a shareware collection (a popular way of distributing DOS programs back in the day). So, monkey see monkey do, I wrote my own "annoyance" screen into the software, prompting potential users to "register" their copy. I'm very happy to distribute this software freely today, and I doubt anyone would want to pay $10 for an old DOS program written by a gradeschooler, anyway. However, I've left the programs as they are for history's sake.

All the software on this page was, indeed, written by me, Daniel McFeeters, and dispite internal claims to the contrary, is hereby licensed under the MIT License as follows:

Copyright (c) 1997-2011 by Daniel McFeeters

Permission is hereby granted, free of charge, to any person obtaining
a copy of this software and associated documentation files (the
"Software"), to deal in the Software without restriction, including
without limitation the rights to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell copies of the Software, and to
permit persons to whom the Software is furnished to do so, subject to
the following conditions:

The above copyright notice and this permission notice shall be
included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

Tags: 

Visual IFS

The fall of 1998 I was the first time I had consistent access to the world of Microsoft Windows, and all the development platforms associated with it. I learned Visual Basic, mostly through a lot of time playing with Visual Studio. I wanted to write a "real" program, with all the user-interface elements that I was growing familiar with in other Windows applications, and my Visual IFS fractal designer was my most successful attempt. My biggest disappointment with this program was the poor performance, especially related to drawing pixels on the screen.

As a Teenager - DOS and Turbo Pascal

Early DOS Software

My First Program

Everything has a first. I don't recall if perhaps I started this file as a "Hello, World" application, but by the time I was ready to move on from "MyFirst", this is what it looked like. February 13, 1997

Program MyFirst;
var
  A,B   : integer;
  ratio : real;
begin
  Write('Enter two numbers: ');
  Readln(A,B);
  Ratio := A / B;
  Writeln('the ratio is',Ratio)
end.

Source Code: MYFIRST.PAS DOS Executable: MYFIRST.EXE

Subscribe to RSS - Museum