My own learning experience (as far as memory goes...):
  1. Read beginner tutorials, such as the ZBTs (there was only one at the time, I think) and parts of the DM Guide. Then experimented and practiced.
  2. "Abused" the DM Reference (click here or press F1 in Dream Maker), as has been mentioned by others. Read, inspected and fiddled with demos, snippets and source code (quite important to avoid doing this with badly-written code such as anime rips'). Among them were "Your First World" by Dantom and "Step BYOND" by Deadron (seems to have been awesomely overhauled since! :) ).
  3. "Abused" the forum search, DM Guide and Reference, tutorials and Dream Makers guild*, used and inspected well-done libraries, demos and other resources. Pretty much anything by Lummox JR, Dantom, Tom, Garthor (see Gathor's posts), Hiead, Jtgibson (see Jtgibson's Snippets), DarkCampainger [sic], Nadrew, Gughunter, Crashed, IainPeregrine, Foomer, PirateHead, Audeuro, and others is typically recommended as either immediately useful, excellent, insightful, or at least a good read. This includes libraries, demos, articles, blog posts and forum posts. I'd also recommend my own past posts, at least for people who don't mind the occasional huge wall of text (this post would likely be one of my smaller walls), anyway... ;D
  4. When I'd been looking for something specific or obscure, I had "abused" the forum search, resources search and Google search. There are some tricks and experience to be accumulated here, such as looking for the right keywords and using special search modifiers, such as using "external dll" in a Google search query to, in this example, search for pages with the phrase external dll only on the website. Searching outside BYOND had also been useful as many things that apply to DM apply to all programming languages in general, in particular things like design, programming paradigms and styles, algorithms and math.
    If you're looking for an answer and all of the above fails, then make a forum thread.
  5. Final step: ponder, inspect, practice and repeat ad infinitum, since you can always improve and learn something new.

At some random point in the above routine, this had happened:

Stephen001 wrote:
Just kind of woke up one day, and could program just about whatever language I liked. Kind of like when Neo learns Kung Fu in the Matrix.
All programming languages share many similarities, and the mindsets that needs to be used with them all overlap a lot. DM code itself is particularly similar to Python code and C code.

*Note that there have been changes and new resources since my time. I've also been mostly off the site for a long while and it's changed. I see there are now also new "BYOND 101" and "BYOND Whitepaper" articles that a beginner can read for useful background exposition. Also, I'd guess at first glance that the Dream Makers guilds as well as other guilds (and blogs?) are gone now, so the respective resources are relocated on the BYOND website, possibly some of them gone from it.


I'm almost a site newbie now. :D How do I go about quickly finding all those interesting articles by the above people in one place right now?
*looks around* I guess it's at the new (for me, at least) Tutorials & Snippets forum. I think the Dream Makers guild was far more organized and convenient to read, but at least that's just a first impression at the moment. Also, it seems that the 'advanced forum search' has been changed and slightly nerfed in capabilities and that some previously-allowed HTML tags have been blocked in posts. :<

EDIT: Nowadays, it's also highly recommended that any learner additionally see the Interface/Skin Reference and the sticky postsBYOND Resource Repository in the Developer Help forum.
In response to Complex Robot
Thanks for the mention; I'm glad to see my efforts have paid off. :) Yeah, haven't really been around for a year - or three. :P
Hopefully, my previous post in this thread will also be useful in the future. Hopeless perfectionist, I am.
Which is kind of in the way of completing any large projects. ^_o
In response to Kaioken
Kaioken wrote:
... ... ...

I pretty much did exactly what Kaioken said in that comment. I literally almost wouldn't change a word in all of his five steps. The only difference is that I didn't wake up one day and realize I could program anything. I woke up one day and realized I could kind of vaguely understand and probably learn easily anything similar to Python or C. I'm still stuck with DM. It's like how when somebody learns Spanish or any Romantic language that learning another Romantic language becomes a cake-walk, and you can probably already read and almost understand it completely before you even start.
Well, initially, I learned through a computer programming class I took back in the second year of high school. When I only learned how to make a clock, stopwatch, and basic calculator, I decided I'd help a few friends on BYOND. Most of it was just dbz and naruto rips. I still had little to no idea on what to do with any of it. I didn't go to the forums or google to look up anything, I didn't even glance at the reference at first. I learned a lot of what was in the reference by seeing how it worked inside the rips I was working on. Then about six months in I decided I was gonna read through parts of the reference. That helped speed things up a lot.

SO- before I start going off and explaining every step I took to get to the 'meh'-ness I have today, I would like to end it here by saying 'trail and error'. You'll have to be a bit of a natural I suppose to get anywhere anytime soon from starting like that. Having past experience in other languages always helps.
I ate the brains of a computer science graduate.
Love the input from everyone! I stickied the post, hoping for more great input.
My first experience with programming was when I was 10 years old, my dad showed me QBASIC. He showed me how to number the lines and print stuff to the screen and use GOTO and set variables. It had a F1 reference just like DM so I used that to figure out various stuff. I would always try to make games but I was too young to really get anywhere. I remember making this "game" where you had to smash all the keys as fast as possible until a number reached zero XD. I forayed into graphics a tiny bit before dropping it and never touching the language again.

Later, my parents got me this awful thing, I think it was called "Learn how to Program Visual Basic." It was geared toward kids so it was like this goofy character would give you lessons about programming. It was pretty stupid though, I never did much with that.

Then I finally discovered BYOND in 2003 and I have loved it since. I took breaks of a year or more a few times, but I never forgot the basics. Which I learned from ZBT as many others, and of course the forums, other tutorials and libraries, etc.

Lately I have been finding that I am more capable of hitting F1, reading about a function that is new to me, and being able to figure it out reasonably quick. Still, I often find it helpful to look at examples in people's libraries. I also like trying to figure out solutions for others when they are stuck on the help forum. I think its a good exercise.
Many interesting posts in here. I guess I will share my story then.

When I was quite young I have been watching my uncle programming some visual basic, then in mid school I discovered BYOND, and tried to program things but it never worked out.. I loved it, and decided to take the programming approach.

I guess my most programming experience is from my SE university course which am doing at the moment, from assembly language to c++, with some side languages for other stuff like data management, but I am mostly into java (for now). I am really glad I am doing what I love, and can not imagine how happy I will be if this became my profession one day.

I just came back to BYOND, as a developer rather than a player, and I am picking the language quickly as it is similar to lots of what I have been studying, I like the unique functions and methods used in Dream Maker, the style is very different, simple, powerful and just for its purpose.

If we talk about DM, i had interest in it when i saw Heroes United a long time ago. Then i looked at BYOND forums and then read part of DM guide. (Just a small part). Then everything got easier.

if we talk about C++, well, i aspire to be a great programmer someday, so i looked for some "books" online, though never got to read one. Then i joined the "Pokemon Online" project. There i started to learn about C++ doing stuff for the project. Also a friend "Ripiz" (He's also here) helps me with some stuff i don't really understnad.

(As of now, i'm working on a Dream Maker IDE. :D
I should probably try to answer the question properly.

I started looking into programming about 10 years ago, when myself and a friend got rather irritated by obvious bugs and usability issues in the DBZ rips we were playing on BYOND at the time. That lasted about 2 weeks and involved fixing like 3 trivial bugs. My experience with programming on BYOND stopped there pretty much. However I was bitten, so programming became my thing.

For the next 3 years I self taught on PHP and C++. I thought I was fairly capable at the time and earned a few hundred dollars in freelance. In hindsight, I knew very little and wrote pretty poor code. I realised this just before going off to university for 4 years for software engineering.

That is when things really started. Java, C/C++, PHP, Perl, Python, LISP, Prolog, x86 and amd64 assembly, among others, for languages. The languages weren't really important though, it was the variety of syntax and paradigms in particular. Good Prolog for example requires a different mindset to good Java.

The theory courses are probably the basis of the bulk of my ability. Spending 10 weeks on object oriented design, patterns etc explicitly as opposed to a side thought in a project allowed for a lot of reflection and understanding, some of it philosophical. Same with data structures, algorithms, compiler design, computational complexity, parallel design, project management etc. I thought then, I was quite capable.

In actually I was all theory and little practical experience. Three years of industry in a few companies and about five projects has allowed me to hone my art, put theory into practice, learn from my experience etc.

True to form, I now consider myself capable, but probably lack sorely in a few areas and need more experience even iny strong areas. In each change I've done, if jumped in capability by about 10x. University Graduate Stephen is nothing on the current Stephen, for capability.
I had always been a hobbyist game developer. When I was a kid, I was introduced to Klik&Play, though I was never any good at using it. Later on, it was succeeded by Games Factory and then RPG Maker 2000/2003.

I mostly learned the logic for programming with RPG Maker's built in scripting functionality, where you could select commands and their parameters with buttons and it would fill in lines of code for you. This is also when I got used to reading syntax.

I came to BYOND because I was stalking my favorite RM2K3 developer (Dguy13, the person who developed The Chimera Report for RM2K3). I never found him here, but I stuck around anyway. BYOND was my first language where I had to actually type the code.
In response to Magicsofa
WAH?! I have a book called "How to Program Visual Basics".
I found it about last week.
Sources, but it gives me bad habits :/
I am using all kinds of ways to learn. So far only a year of experience so I believe myself to be an upper beginner.

-DM guide
-DM reference
-Posting on forums
-Searching forums
-Asking friends to help
-Hiring others to code and explain me a game
-Trial and error. This one might be the best for me
Until very recently I've never considered myself a programmer.

My experience started way back a few years ago, I was about 18 (almost 21 now) with learning HTML & CSS. After building a few cool looking pages and flaunting those skills around for a bit, I realized how incapable I really was, and picked up Javascript. I coded a lot of scripts for Zetaboards forums, and was even an Administrator for a coding forum during a time period.

After I went away from that, I was hardly active in programming anything up until 2012's summer, where I decided to help a friend get a project started. She didn't have any luck gathering a team, but she had some great game ideas and no ability to put them into motion (nor did I at the time).

After failing to get a programmer onboard, I got sick of searching and decided I would just learn DM and code the game myself!

The first period in there was pretty hellish, I was still a newb at programming, so I spent countless hours reading the reference, fiddling around in DM, and asking questions.

I've always despised reading other people's source code, and until date I've never referenced another game for a solution. (Yay me) I have gotten a looot of help from the Developer Help forum though, so thanks to everyone who helped me there. My favorite helper is definitely DarkCampainger, he always gives good answers. SSX also helped me a good bit.. among some others.

I have to credit my teacher above all else though. He's given me many logic lessons to solve, which has increased my ability to program a ton. In my opinion, learning how to use efficient logic, and learning to simplify and improve code is a really effective method of bettering yourself as a programmer.

Now, I'm pretty confident in myself thanks to all the hard work I've put into it.

Oh, yeah.. the forum tutorials were a great helper in the beginning too. There's my story =)
I learned at first following some video tutorials on YouTube. They weren't that good, this guy must have still been a newbie. Anyway, after watching his tutorials, I tried making a simple "Say" program when I was about 10 or 11, I remember crying myself to sleep and sending hate mail to all the tutorialists(New word, deal with it) out there because it was impossible to make. I took a break from the engine for quite a while, and just played games. After a while I went back after I was a bit more intelligent, and mainly learned from the BYOND Resources and the guide.
I still don't know how to program. I've been through about half the DM code Guide, twice. That's about 100 - 120 pages. And attempted everything. I am a Computer Science student though and I can code in other languages. This just eludes me.
I know the basics of how to code in an icon so that's all I do to test my stuff.
My first game development contact was almost around 8 years ago, when I made my first M.U.G.E.N game, although it is not programming in itself, it was fun by the moment.
I suddenly got bored of MUGENs and wanted to make something different, and after a few time I encountered myself making a game in RPG Maker, which was very easy to use, although a bit messy to understand at first glance. I also worked with Game Maker and a few other minor tools, until some day I came to BYOND, with an account I don't remember the name of, probably adriandragon.

I started playing games, I remember a dbZeta game of which I later got the source, and that was my really first contact with programming itself. Although by that time that couldn't even be called 'programming', I got used to the language very fast and continued developing my own skills at it.

Like half a year ago I started teaching myself about the C++ language by taking a course online, which I should say, I didn't even finish. What do I have to say, courses are not made for me I guess, I prefer taking it slowly.

I also have a basic concept of PHP, and currently willing to learn Java. As you may see, I have acquired programming as a hobby more than a job or a need.
In response to BayJune
BayJune wrote:
WAH?! I have a book called "How to Program Visual Basics".
I found it about last week.

The thing I was talking about was actually called "Learn to program BASIC" and it was published by Interplay. It was a sort of interactive tutorial program on a CD, with videos of this character called "media man" who taught you, well, the basics :D

I found some videos from it on youtube and they are pretty hilarious:

It was really geared toward introducing people to programming, not actually getting them to be decent at it. Of course it's also directed at young kids, so that is probably why it wasn't very advanced :P
Page: 1 2 3 4 5 6