Quote: "My Dad was a Maintenance Machinist for the 2 Particle Beam Accelerators they had on site at the time, so I got tours of some pretty cool stuff that no one else every got to see."
That's awesome.
Quote: "First of all Phaelax i don't know how to programe a virus nor a spam
Second my posts goes for confirmation in order to be posted
And Third most important is that i asked how do you guys think while programming and i apolagies if i was not straight forward."
Actually, i don't recall seeing any question in your first post. If it wasn't for everyone else's responses, I wouldn't have even know why you made this post as it seemed more of a statement to me. Vague posts by brand new users often throw a flag for me. Well, that and the bad english, but when it comes to language on this forum I try to give the benefit of doubt.
Moving on....
My interest with computers started with our first Amiga 500 in the late 80s. I started programming with QBasic sometime around '95 I think, hosting a fan website full of codes that often did well in the QB top 40. Then in '97 I took Pascal (which came naturally to me) and C++ in school. Sometime in early college I had classes in Java, C++, COBOL, ASP.NET, and SQL. I've stuck with Java for many years now, learning much of it on my own outside of class. I've dabbled in C#, porting some of my Java projects into it. Most of my hobbyist programming is in DBP still, and have been using it for 10 years now. Professionally, I've done mostly web stuff, JSP and html/css.
That's my brief history. If you're looking for ideas on how to go about programming in general and don't want to build a UML diagram everytime, then it's best to make a list. When making any sort of GUI, I draw it out in Photoshop first so I have a template to refer to. When it comes to functionality, I make a list of everything the program has to do, so I'm not left thinking about what to do next after each task is completed. I also try to make my code modular and also apply a bit of web design knowledge, that is, keep content and presentation separate. I'll have a separate routine which draws or displays the graphics while a completely separate routine manages triggers and events.
Also, indent code properly and make lots of comments. Even if the comment seems unnecessary it can still divide up parts of the code making it easier to look over.

"Any sufficiently advanced technology is indistinguishable from magic" ~ Arthur C. Clarke