Code Monkey home page Code Monkey logo

matt-highschool-qbasic's Introduction

Matt's High School QBasic

This repo contains the original QBasic scripts I wrote in highschool when first learning how to make things come to life on a computer. The code is a mess: very few functions, terrible naming conventions, no comments and no source control. However, it still brings me fond memories ;-)

I first learned to program in Mr. Bredder's class "Computer Programming and Problem Solving" in my sophomore year at West Morris Mendham High School.

It was my second-choice for an elective, the first being the machine shop class, however it quickly became my favorite class ever. The class featured math problems that could be automated by computer. It started with simple algebra problems, and eventually got to geometry and fractals. However, I spent most of my time reading the QBasic help menu, and then making games or visualizations.

The first game that was any good was call TANK. I based it off the game Scorched Earth that I enjoyed playing with friends. It featured a varied terrain, turn-based multi-player, and terrible physics. I didn't know how to do a ballistic trajectory, so I just made up what looked reasonable by solving the coefficients of a parabola given input angle and power. This lead to a funny bug where players could "laser" across the map by using a low angle. I tried to ask my math teacher for help, but he said I needed calculus.

Luckily, I befriended a junior named Jeff Kaplan, who taught me about euler integration for velocity and position... and thus TANKS2 was born. TANKS2 was real-time multi-player, and featured bouncing balls. I got the bouncing working by computing the analytical derivative of the terrain. I figured all this out on a five-hour car ride from New Jersey to Boston, laptop and Calc book in the back of the car. My friends and I would play the game in the computer lab, sharing the keys on the keyboard to achieve the real-time multiplayer action.

In my junior year, I took the official "Computer Programming" class, which was in C++. The curriculum was not nearly as fun, and so I still spent most of my time making and playing games in QBasic, which we would play in class.

Eventually I visited WPI and met kids with more rigorous programming backgrounds, one of whom scoffed at my mention of QBasic. He derided it as "not real programming" and that hurt my feelings a bit. I definitely had a lot to learn.

At some point it would be nice to get a Qbasic interpreter that works for mac or linux so I can replay these things.

matt-highschool-qbasic's People

Contributors

matt-donahoe-skydio avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.