Math was my gateway into programming. In middle school (circa 1997), my math teacher had a Mac with Graphing Calculator on it. Impressed by its power, I looked for a Windows version, but could not find one. A little more than a year later, while I was studying Algebra II from a used textbook, I stumbled across a BASIC program listing that solved the roots of a quadratic equation. I found QBasic (see below) on the Internet, and began playing around with it.
I had tried learning C/C++ earlier, but got stuck on the concept of pointers. QBasic abstracted all that away, and its simplicity made programming interesting and intuitive. I remembered the graphing program that my math teacher had, and attempted to make my own.
My first graphing program was very limited, being able to graph linear and quadratic functions only. My final program for QBasic could also graph inequalities (see below).
Unfortunately, QBasic ran in the MS-DOS console and was an interpreter only, which meant that it could not compile programs, so I had to rewrite my graphing program in windows using Visual Basic (see below).
In the years that followed, I became obsessed with programming a graphing calculator. Little did I know how much work it actually takes to build one. Nevertheless, my ideal pushed the envelope on my learning, and I suppose you could say I am where I am now because of it.
My final iteration of Graph was still less powerful than Graphing Calculator (which could graph 3-D as well), but by then, I had moved on to other projects.
Download QBasic (288 KB).
Download Graph 2 (QBasic) (1.26 KB).
Download Graph 5 (Visual Basic) (359 KB).