I promised a part two so here it is…
The first post can be found here.
As previously mentioned, my previous self taught programming experience involved BASIC and whatever the TI-85 uses. I had my first official taste of taught programming in College a couple of years after High School with C. My Engineering degree required I take “Programming for Engineers” which was basically C programming to solve iterative math problems. Most of the programs we did were by the book style involving arrays and graph style equations. The book for the course was actually two books and we only got through maybe one of them since Engineers aren’t computer programmers.
This was fun but at the time I was rather busy with school so I didn’t to doo much beyond what was required for class. A couple semesters later however was different. I finished my Associates in 2.5 years meaning I finished in December. I wanted to start the Bachelor’s track in the Fall since it makes all of the class schedules work out better so I had a semester to kill. So in addition to working a whole bunch, I took two classes just for fun, Basic electronics and Computer Science 101.
CS101 was essentially C++ Programming for beginners. There are some keys here. I’ve had experience with C, which is very similar to C++, especially at this level of programming. Also The TI-85 language is reasonably similar to C at this level of programming. Basically, I’ve had a decent amount of experience at this. The end result was that I excelled in this class, I did better than everyone else (most of which were actual Computer Science Majors). The teacher also set up a side class for whomever wanted to attend learning some visual windows based elements.
The fun was in the larger assignments though. Most of the quick assignments didn’t leave much room for creativity. “Mr. Shopkeeper needs a program that will calculate 7% sales tax for his sales. Make a program that takes the total bill in and outputs the total with tax” doesn’t leave much room for expansion.
The larger assignments were all simple games with variable elements that allowed for much more fun. We also got more time to work on these, maybe a week or two. I could easily code the basic assignment in a day leaving me, well, a week or two, to code “extras”.
This is where I created my first three “real games”. Note the scare quotes. Truth is, these are all rather buggy as evidenced by the fact that they don’t like unexpected input and are generally pretty crummy.
The parts that I added was anything graphical, even if it is ASCII graphics. The requirement was only for a text based input and output. Ok, yeah, it’s pretty simple, big deal.
I’ve done a few other projects that never got completed, the most ambitious was a PC based sequel to my previously mentioned Dragon Quest series. This one was somewhat Zork like with a text based interface only it added a one on one random battle system like Final Fantasy and a level up system similar to Final Fantasy 2 where skills build as you use them and class is based on your skills. I got as far as completing the map (without descriptions). So you can wander around an empty world in it’s current state. One day I hope to get back to it.
My other self taught programming project involves HTML, if you want to call it programming. A better word is probably “coding”. Back in 1998 when I first started building webpages I started in MS Frontpage. I noticed there was a lot of flack for people who used Frontpage so I bought this big fat HTML book (HTML Complete, $20, great value). So I taught myself basic coding of HTML. These days I don’t use this skill as much since blogs make things much much easier but this skill does come in hand a lot when I’m trying to manually tweak my WordPress templates.
Programming is something I enjoy when I have time though my main complaint is always finding a decent free compiler. The only free C++ complier I’ve ever found was by Borland and it is absolutely TERRIBLE for user friendlyness. I plan to do some additional programming in the near future for fun it’s mostly a matter of finding time. I’d love tog et into more visual element and make actual graphics and program that run in Windows. Also there are quite a few more modern languages out there now.
Anyway, if I build anything new, you’ll be surely seeing it here.