   How to Stay Committed?
  I'm kind of new to C++ programming, and I find it really hard to stay committed to finishing a program/game. Do you veterans have any tips for me?   
  Im not a veteran but what helps me stay focused it not working on the project all the time =pIf I limit myself to just a few hours a day im more likely to complete what im working on, than blasting out 30 hours in a weekend and not wanting to touch the IDE for a month.   ;Quote:Original post by CardboxCoderI'm kind of new to C++ programming, and I find it really hard to stay committed to finishing a program/game. Do you veterans have any tips for me?Not really. It varies from person to person. C++ is one of the more annoying languages around, but in the end programming is not easy (especially in the beginning). Personally, I've taken to just not finishing a lot of things. It sucks, but most of my programming is for recreation. As long as my hobby projects fulfill that need, it's not the end of the world if stuff doesn't get done.   ;  Well the thing is that if you like what you are working on. I do not see why you would not want to dedicated the time to finish it. For me so far that has work, i have been working on a project now for the past 2 years and half, and i am still excited even today as i work on it. So far it is around 575k lines of codes.   ;  The only way I even could stay committed to learning C and C++ was through making simple programs that acted like games.  I did have six years of experience programming before, however that was only in BASIC.  What I did instead of making programs like "Hello World" and "Guess the Number!"  I make programs that related to what interested me the most.  So instead of learning a while loop like this:#include <iostream>#include <string>int main(){std::string Office_Login = "0632";bool Login_Accepted = false;std::string Office_Input = "0";while (Login_Accepted == false){std::cout << "Enter Your Office Login:____\b\b\b\b";std::cin >> Office_Input;std::cin.get();if (Office_Input == Office_Login){Login_Accepted = true;}else{std::cout << "Incorrect Login!\n\n";}}std::cout << "\n\nCorrect Login!";std::cin.get();return 0;}I would change it up and learn it like this:#include <iostream>int main(){int Menu_Number = 0;int Fire_Number = 1;int Quit_Number = 2;while (Menu_Number != Quit_Number){std::cout << "1 - Fire\n2 - Quit";std::cout << "\n\nEnter:_\b";std::cin >> Menu_Number;std::cin.get();if (Menu_Number == Fire_Number){std::cout << "\n\nLazer Fired!\n\n";}else if (Menu_Number == Quit_Number){std::cout << "\n\nExiting Fire System!\n\n";}else{std::cout << "\n\nInvaild Command!\n\n";}}std::cout << "\n\nSystem Offline!";std::cin.get();return 0;}People have used this same technique when teaching kids who don't understand certain math concepts, and it keeps them motivated once you relate it to something they enjoy.   ;  Get people interested in your game. Show lots of screenshots/videos and give out as much information as you can via a blog or some other outlet. This does two things:It gives you feedback very early on in your development, which is the best time to make changes to the gameIt gets people bugging you about being able to play the game, whether it's a prototype, test build or full release. Satisfying a fan base is a great motivator IMO;  I've tried blogging, and am still doing it (once in a blue moon) - it helps to some degree, especially if you post screenshots. But if your commitment is very low, then likely you aren't getting much fun out of this. Don't force yourself if you don't want to. For a quicker turnaround, you may want to try Python. You'll actually be writing games within a couple of days, and the lessons about programming and game development that you learn there will hold true in any language.   ;Quote:Original post by CardboxCoderI'm kind of new to C++ programming, and I find it really hard to stay committed to finishing a program/game.In the long run I use to ask myself "why am I doing this?" rather than using tricks to, well, trick myself into things [grin]A good question would probably be, why do you want to dive into C++, what inspired you to make the decision?Besides, there are advantages of not finishing things too, such as getting a broad experience of many small things.   ;Quote:Original post by CardboxCoderI find it really hard to stay committed to finishing a program/game. Do you veterans have any tips for me?1. Write small programs (no MMORPGs)2. Write programs that do something that interests youFor example, I once was very interested in compression algorithms, so I implemented LZW and later arithmetic coding. When I was heavily into context free grammars, I wrote an LALR parser.I also find it very refreshing to write about the things that you learn and talk to other people about them. The only thing you shouldn't do is write tutorials as long as you're still a beginner. There are enough crappy C++ tutorials already.   ;  I'm not veteran but:First of all, play games in genre you like (for me its for example RPG) because when you play, you get excited and want to make your own, however don't start with big projects, go in small and climb up and up.Next thing is to tell your friends that you are making a game, or learning to make a game. Why that? Friends that do care about you will be interested and every few time will ask "How is your game going?" if you did nothing (not because you really didn't have time or etc), you will say that you was lazy to do things, and people will get negative opinion about you, since they can not take your words in serious, but even if you did a small things, they will know that they can trust on you because you don't just say stuff.Also try to educate your self, when you wake up and ask your self: "Should I work on my game today?" and if the answer is negative think for your self: "Am I sucks? I just say words without doing anything?" Try to piss your self out, and it should help, cause no body wants to be a looser, and if you think you are, or your friends thinks you are, than you should fix this, and show them/yourself that you are not. By the way, self education is important, and not only here, but in life in general, people who are not self-educated and can't stand in front of hard things, won't success a lot in life, cause they will be lazy to go to work/date.This is the "methods" I use.However never force your self, if you don't like what you are doing better not to do it. One more thing, you should not code 24/7, but try to have some schedule like 4 days in a week each 4 hours long. Because when you are excited you will start to code a lot, than you will see its not that easy, and you will start to code less and less and less, and in the end you won't code anymore, and if you have schedule and use the "methods" I provided or someone else provided/will provide, you will stay in shape.Enjoy ;)   