How did you start learning?

General FreeBASIC programming questions.
dchapman
Posts: 19
Joined: Apr 01, 2010 9:44
Location: Dallas Texas

How did you start learning?

Post by dchapman »

Hey folks,

So, I've been posting some fairly specific questions in the Beginner section, but it occurred to me that asking this in the General section might be a good idea, in case some of you don't read the Beginner posts.

When you started learning to program, how did you go about it?

Did you...

Systematically go through the list of commands, and learn most or all of them before you started on your first big project?

Learn the most commonly used commands and start coding simple projects, then sort of add commands to your repertoire later?

Start off by getting some source code and picking your way through it, maybe trying to replicate the techniques you saw etc?

Combination of the above, or some approach I haven't brought up?

What was most effective for you?

Any feedback is appreciated.

Thanks!


~David
marcov
Posts: 3452
Joined: Jun 16, 2005 9:45
Location: Netherlands
Contact:

Post by marcov »

I didn't mean to start programming. We were typing in listings in C=64 basic, and made errors.

Trying to find these errors was pretty much what got me started, and at first I only looked at the "relevant" parts of the manual.

After I got a bit used to the lingo (the manual was in German, not my native language. While I understood German, technical German was something else), I managed to read the manual back to back, and later got more books.

Books are in general very efficient. I found them more efficient than most internet courses. When I was in college, I used the university library a lot, before that the public library. Currently I have quite a collection myself.

Anyway, when I got a PC, I dabbled with QBasic for about half an year, but it was quite slow. A teacher gave me Turbo Pascal 6, and I started using that.
Last edited by marcov on Apr 18, 2010 7:48, edited 1 time in total.
anonymous1337
Posts: 5494
Joined: Sep 12, 2005 20:06
Location: California

Post by anonymous1337 »

I learned nearly everything I know about programming through example code and "the manual". I started in game development at thirteen years old and have stuck with it since. (Nothing I've spent more than a week on has ever hit the community. Hah.)

Independent research is my greatest tool. You learn a lot by sitting down and thinking about how things work, rather than just glancing over code or copy + pasting it. This same approach pays off in all aspects of life.

IMO, programming is 10% knowing commands, 90% implementing/designing solutions. (What takes longer, solving problems or looking up the right commands in the manual?)
Last edited by anonymous1337 on Apr 12, 2010 21:27, edited 1 time in total.
vdecampo
Posts: 2992
Joined: Aug 07, 2007 23:20
Location: Maryland, USA
Contact:

Post by vdecampo »

At the time I started there was no "PC" or Windows or DOS. I picked up a book of programming examples and started keying them into my trusty TRS-80 Model III. Then I would play around changing elements of the program to see what would happen. From there I picked up the actual language guide and started coding my own stuff. As computers matured, so did my skills at programming them.

-Vince
Landeel
Posts: 777
Joined: Jan 25, 2007 10:32
Location: Brazil
Contact:

Post by Landeel »

I have started coding small games in my MSX using MSX BASIC (yeah, I'm getting old).
Richard
Posts: 3096
Joined: Jan 15, 2007 20:44
Location: Australia

Post by Richard »

You have entered the field, next go through the list of keywords in the manual and read the quick description of each. That will let you know the tools available and what you may have missed. It will give you a better idea of the “shape” of the language.
BasicCoder2
Posts: 3904
Joined: Jan 01, 2009 7:03
Location: Australia

Re: How did you start learning?

Post by BasicCoder2 »

dchapman wrote:
When you started learning to program, how did you go about it?

~David
I started learning to program as a hobby many years ago
on a TRS-80 using the excellent books that were available
in those pre internet days. Programming is still a hobby
for me so I don't program all that much.

From your second last thread I see you are interested in
programming some kind of game? I think this is as good
a way as any to learn programming and you seem to have
made a good start? What have you done so far?


JohnC
Ophelius
Posts: 428
Joined: Feb 26, 2006 1:57

Post by Ophelius »

When I was 16, my friend handed me a piece of paper with a few lines of Qbasic code on it and told me to type it in, and hit F5. I never knew what programming was or ever heard of it, but I did what he told me. It blew my mind when I ran it (I think it was a simple input that printed out some funny phrase using the name I typed in). "You mean, I have the ability to tell the computer what I want it to do?". I was hooked and still am 14 years later.

The way I learned was first trying to figure out a solution to my problem from what I knew already, then if I couldn't, I read through the manual learning about new key words. Later when I had access to the internet, I would download other people's code and learned by example.
Prime Productions
Posts: 147
Joined: May 24, 2009 23:13
Location: Texas, United States, Planet Earth
Contact:

Post by Prime Productions »

Hello:

I remember one day I suddenly thought it would be cool if I could make my own games. About the only games I had ever played were breakout, alley cat, and paratroopers. Better games had been made at that time but I didn't own any, so I wanted to make them.

Now I had no idea about programming, but my father told me type code out in a program that came with DOS, but that he didn't remember what it was called.

So I tried typing out the name of every DOS utility on my PC. Eventually I came to QBASIC. I went straight to HELP. I learned from the non-game oriented examples.

I remember one of my greatest problems was flicker. I naturally found Screen 13 was the best. Eventually I figured out a way to store a screen in memory, and then flip it to the screen. I was so proud. Then I realized later there was nothing original about that and that everybody did it.

But solving my own problems made me continue, so here I am programming in FreeBASIC.

David
dchapman
Posts: 19
Joined: Apr 01, 2010 9:44
Location: Dallas Texas

Re: How did you start learning?

Post by dchapman »

Thanks for stopping by the thread guys, I appreciate it.
BasicCoder2 wrote:From your second last thread I see you are interested in
programming some kind of game?
What have you done so far?

JohnC
Yes, the impetus for me wanting to learn programming is to program a game. Specifically, the end goal is to recreate (as best as I can) the experience of playing a table-top RPG. In this case, I'm leaning towards basing it on the first edition of Advanced Dungeons and Dragons (TSR).

Here's a site dedicated to ad&d and od&d (original)
http://imglikeopera.mozdev.org/installation.html

Why? Well, why not. AD&D is much simpler rule-wise and concept-wise than later, more modern editions. It's far from a perfect system, and has many, many flaws (which proponents of generic-based and modern-day systems love to point out) but, the fact is, it functions quite well for what it is.

What it isn't is an attempt to perfectly simulate most/all aspects of adventuring in a quasi-medieval fantasy world.

What it is: a bare-bones system for resolving actions using a fortune-based (in this case dice) resolution mechanic with a little window dressing for flavor. The great thing about it is it's easy to add options or remove them.

And the RPG I'd like to write will cater to the three traditional types of people who play roleplaying games, and those are, to wit: the Narrativist, the Gamist, and the Simulationist.

The Narrativist gets most of her enjoyment out of the story and plot of the rpg.

The Gamist enjoys rolling the dice, killing things, and tweaking his character during creation (this type of person is colloquially referred to as a twink) to get the maximum effect of bonuses, skills, abilities, etc for emerging victorious in combat etc.

And then there's the simulationist, who enjoys simulating the life of an adventurer. He's more than happy to keep track of how many arrows are left in his quiver, what a healing potion tastes like (ever ask yourself that question?), and how such things as humidity might effect his armor and blade.

Most people have a little of each type in their personality, but tend to gravitate towards one or, in some cases, two categories. I'd like to create a game that offers, upon startup, options that correlate to playing in a gameworld based one of those three archetypes, and possibly and a fourth option for the player to create his own mix.

Reading through the tutorials, it's apparent to me that most people who get into programming to make an rpg quit after a few months when they realize how much work is involved, or how much time is involved, to make all their wishes happen. I'm well aware of that fact.

In my case, I intend to proceed with careful planning, and I don't care how long it takes me to learn the required commands, tips, and tricks.

But like I said earlier, the end goal is to recreate that "old-school rpg" feel. Whether I keep it ascii-based or venture into a graphics-based development will depend on whether I can successfully ride that learning curve.

So, instead of starting with AD&D 1st Ed rules, I'm going to start with it's predecessor (much less to implement) while I learn this business of writing code.

Gary Gygax (God rest his soul) and some other folks came out with three books that were an attempt to formalize into a set the rules for fantasy wargaming with miniatures. Those books were Men & Magic, Monsters & Treasure, and Underworld & Wilderness.

Incidentally, if you have an interest in the history of D&D and have never heard of these books, or if you have and have always wanted to see them, but didn't want to bother going through ebay to find 'em, you can download them here:

http://preterhuman.net/texts/gaming_and_diversion/RPG/

Just scroll down and look for the entries beginning with TSR. You might wish to explore preterhuman.net further, and browse all of their categories--they have a large collection of downloadable texts (some EXTREMELY rare) that I haven't seen on any torrent, or any P2P file sharing network. They'll probably end up shutting down eventually (due to costs) so I suggest you browse and download at your earliest convenience.

So. What have I done so far? Mostly a lot of thinking. I've been sifting through my roleplaying experience back in the day, trying to carve away until what I have is what constitutes fun gaming experience, immerision (a favorite word among hardcore RPG'ers), and other aspects that I'd like to include.

As far as coding, I haven't written a whole lot. It's taken me this far to write up a stat-rolling module for character creation, using Method 1 in the AD&D DMG just to get an idea of what I'd need to learn.

At this stage I'm kind of looking at all the programming requirements that I'll have to meet to realize my idea, and so far I've been surprised at how intricate such things turn out to be. What I thought would be a relatively simple thing to do (an inventory system) as it turns out is going to require LOTS of planning and experimenting to make it work.

Doing this brainstorming/planning/pseudo-code a few times, it's really fundamentally reoriented me in how I appreciate the skills of an accomplished programmer, and has made me realize why commercial games are developed by many teams of dedicated programmers, working on a budget, and within a time constraint.

Well, I'm not a team, in fact I have essentially one real-life buddy who is himself getting into Java programming. He's helped me learn a few of the basic concepts, and has helped me jot down and categorize different parts of the rpg into chunks of development-focused nodes (for lack of a better term).

So, in a nutshell, that's where I'm at.

And, as always, I'm open to links, tips, suggestions etc. from you guys.

See you next thread,

~David
duke4e
Posts: 717
Joined: Dec 04, 2005 0:16
Location: Varazdin, Croatia, Europe
Contact:

Post by duke4e »

I started programing on my 386 pc when my hard drive died and I found a floppy with qbasic on it.
JohnB
Posts: 236
Joined: Jul 22, 2005 3:53
Location: Minnesota Arizona

Post by JohnB »

I started Basic programming on an S100 system with Processor Technology OS with a cassette tape for mass storage and MS 5K Basic. 1978? Books were a good source of code. Today, most of the early code can be found online.

Today you can buy "QBasic byExample" used on Amazon for 0.84+ cent plus shipping. This could give you some structure for the learning process and introduce you to many aspects of the language.

If you are interested in old basic games try here.

http://www.moorecad.com/classicbasic/index.html

http://www.ifarchive.org/

Hope this helps. Have fun, enjoy.

JohnB
CPUMD
Posts: 1
Joined: Apr 14, 2010 16:33

Post by CPUMD »

Back in the mid 1970's I built an ELF 1802 (RCA based) computer with a soldering gun, a pile of parts and a mountain of patience. Back then RAM chips were measured by the number of BITS they held let alone BYTES or Megs.

Anyway, necessity demanded I learn to program directly in machine code toggling manually between the data and address lines. Six days later I had a very granular image of the Enterprise scrolling across my TV.

After that came the Commodor PET with an astounding 8K of RAM!!

I was so excited I had my Dad pick up a book on BASIC and memorized it in 24 hours. I've been pretty much a BitHead ever since.
Ophelius
Posts: 428
Joined: Feb 26, 2006 1:57

Post by Ophelius »

Good luck on your project David. I hope you succeed at creating your rpg/d&d game. My first attempts were far less daunting. My first attempt was to create a choose your own adventure game. It had no structure, was a terrible mess of spaghetti code, and I failed(I'm not saying you will).

I would avoid even thinking about graphics at your stage. Considering it might be a semi-large program in the end, I would learn good code practice from the start like the ideas of modules and reusable code.

Let us know if you need help, post your code often so we can help you avoid trouble down the line.
adhay
Posts: 158
Joined: May 12, 2006 17:52

Post by adhay »

I'd suggest you start with QB or FBlite.

IMO, the easiest and most fun way to start in programming is writing simple graphics programs. Instant visual gratification along with experience with flow control constructs, variables, screen options, etc. the very basics.

I suggest starting with a simple pg that merely bounces a point horizontally left and right. Add vertical motion with random bounces off the screen edges and then substitute a ball for the point.

Get that down and with some further keyword research, writing your RPG will be snap.
Last edited by adhay on Apr 16, 2010 23:44, edited 1 time in total.
Post Reply