Jump to content

  • Log In with Google      Sign In   
  • Create Account


Another Go at Programming - Advice appreciated


Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.

  • You cannot reply to this topic
10 replies to this topic

#1 HardPhenomenon   Members   -  Reputation: 100

Like
0Likes
Like

Posted 08 January 2012 - 04:54 AM

Hi gamedev.net,

A while ago, I came across this site when I first decided to get into game programming, but with my lack of experience with programming, and a lot of stress from work, I ended up giving up. That won't happen this time.

I quit my job and now have a new job and a new home. So now it is time to start programming again, now that I have the time, motivation and confidence.

I know that most likely 80% of newcomers say this, but I have to say it anyway. I do not have a lot of experience with programming, but I do have some.

I am experienced with basic and - I guess you could say - some intermediate programming in C#, although most of it lies in school projects. Not to say that's bad in any way.

Guess I'd best get to the point.

My experience with C++ is close to none and I wish to change that. That is why I am here to ask for a bit of advice.

I am not good at following books and such and I am looking for a different way to learn C++. What I am intending to do is start with some (very) small projects and work my way up from there, gathering information as I go. But I am having a hard time coming up with something to start out with. All my ideas are too big to start out with. I know I would get lost rather quickly if I decided to do any of these projects now.

The goal is, of course, to eventually start programming small games - but before I can do that, I need a much better understanding of the programming language.

So that's why I hope you will be able to give me some ideas of small projects I can do in order to teach myself C++. Please note that suggestions about a "Hello World!" program is not what I am looking for... I'm looking for a slightly bigger challenge.

I shall end this post with great hopes of anyone being able to suggest one (or more) projects that might get me in the right direction. Even if you do not have one, I appreciate that you took the time to read this.


Regards,

Hard Phenomenon

Sponsor:

#2 Ace19   Members   -  Reputation: 104

Like
0Likes
Like

Posted 08 January 2012 - 06:03 AM

Well, i believe everyone will tell you not to start with C++. IF you still want to, here's a link: http://www.gamefromscratch.com/post/2011/08/04/I-want-to-be-a-game-developer.aspx . If you don't like reading, you could check thenewboston on youtube. I think he has C++ tutorials.

Since you have experience in C#, you should further it. It would be easier to pick up, and you could make side projects so you could stay motivated. Also, since C# is similar to Java, you could try Java afterwards. If game development is what you're looking at, take a look at XNA. This is juat my idea. I'm a beginner as well, and C# isn't too hard. It's better to start with something simple in my opinion. It'll keep you motivated. Your experience would also give you confidence.

#3 Deprecated   Members   -  Reputation: 107

Like
2Likes
Like

Posted 08 January 2012 - 07:40 AM

The first problems at http://projecteuler.net/problems are pretty easy to solve, although they should provide some challenge if you're not familiar with conditional statements, loops and/or functions.

Write a simple text-based game where the computer picks a random number and you have to guess that number. Make the computer tell you whether your guess was greater than, or smaller than the actual number.

Create a deck of cards, write functions to shuffle the deck, sort the deck, display the deck, pick a card from the deck and anything else that you would normally do with a deck of cards.

Write a simple text-based blackjack game where you play against the computer using the deck you designed earlier.

Try to solve the first 20 problems at http://projecteuler.net/problems, and make sure to read the papers you get for completing each challenge.
Those who can do, do; those who can't do, do teach.

#4 Telastyn   Crossbones+   -  Reputation: 3726

Like
0Likes
Like

Posted 08 January 2012 - 09:08 AM

Please note that suggestions about a "Hello World!" program is not what I am looking for... I'm looking for a slightly bigger challenge.


The reason that hello world is given as the default starting point isn't because it's hard to program, but it proves that you have all of the pre-requisites in place. Did you get your compiler there and working properly.

And stick with C#. C++ provides you no benefits.

#5 atcomputers   Members   -  Reputation: 122

Like
0Likes
Like

Posted 08 January 2012 - 02:27 PM

I'd reiterate what everyone is stating about C#. Stick with it. I'm not new to programming, though I am new to game development, and am learning both OpenGL and the XNA framework at the moment, with C# and, C# is definitely showing its strengths in terms of game development, the more I use and experiment with it.

Good luck!

#6 HardPhenomenon   Members   -  Reputation: 100

Like
0Likes
Like

Posted 08 January 2012 - 10:59 PM

Thank you for your responses. I guess the reason why I wanted to get started with C++ is because I have a bit of an old school mindset, thinking that C++ beats C# by miles when it comes to performance.

Write a simple text-based game where the computer picks a random number and you have to guess that number. Make the computer tell you whether your guess was greater than, or smaller than the actual number.

Create a deck of cards, write functions to shuffle the deck, sort the deck, display the deck, pick a card from the deck and anything else that you would normally do with a deck of cards.

Write a simple text-based blackjack game where you play against the computer using the deck you designed earlier.

Try to solve the first 20 problems at http://projecteuler.net/problems, and make sure to read the papers you get for completing each challenge.


Really apprecaite the suggestions. I decided to do the projects you listed in C# to get back into programming. Did the random number thing and added a single or two features as I was programming it. I am looking forward to starting the rest of them but for now, this is it for this session.

The reason that hello world is given as the default starting point isn't because it's hard to program, but it proves that you have all of the pre-requisites in place.


Thanks for telling me. Honestly, I am a little embarassed that I didn't know - but really, the mention of "Hello World!" was meant as a bit of a joke since I did not expect anyone to post it here.

So to all of you - to your relief or not - I decided to stick with C# for a while longer. I respect when people say C++ is not something you should lay your hands on before you have a good understanding of what programming is. And maybe it was a little too optimistic of me to want to get back into programming by choosing a new language. Oh well, I guess there is nothing else to do but keep moving forward.

Once more, thank you for your responses.


Regards,

Hard Phenomenon

#7 atcomputers   Members   -  Reputation: 122

Like
0Likes
Like

Posted 09 January 2012 - 12:16 AM

That old school mind set can kill ya. (Not literally!) Thinking that C++ will be a lot faster than C# is becoming a false pretense. As C# has had a lot of work done over the years, and more specifically .NET. Its really developed in its current iteration.

Unless you're a terrible programmer, you may not even be able to notice a difference in performance using C# over C++. Then again, if you ARE a terrible programmer, it probably wouldn't be a good idea to use C++ anyway. lol

#8 norper   Members   -  Reputation: 101

Like
0Likes
Like

Posted 09 January 2012 - 11:42 AM

Hey

Hard Phenomenon,



you are in a very similar situation to myself so perhaps we could help each other out. i often learn by doing things and over the past week ive picked up quite a bit of knowledge. the tutorials i am going through are very hands on and are helping me learn pretty fast.



I do have a little knowledge of php which is strangly helping me alot in some areas but also making others more confusing.


i have got a few e books i read and reread at night in bed and im understanding more and more each day thanks to the tuts i do.

http://www.freewebs....a/tutorials.htm (very hands on and you get the feeling you've learnt something though accomplishments)
http://www.csharp-st...Tutorial/CSharp

again im no expert so i cant say how good these tuts are in the long run, but im starting to get the hang of the basics!

perhaps coming together as both being new to programming we could learn from each other? I think it would defiantly spur me on to collaborate with someone even if its on making tictactoe>>tetris>>pacman

lemme know what you think.


#9 norper   Members   -  Reputation: 101

Like
0Likes
Like

Posted 09 January 2012 - 11:48 AM

ahh I misread you wanted to learn c++ and not C# (if you change your mind im here), maybe my programming buddy is out there somewhere!

anyway http://archive.gamedev.net/archive/reference/articles/article892.html (i was going to use that as a frame for what games to make before I tried my own) hope it helps

#10 HardPhenomenon   Members   -  Reputation: 100

Like
0Likes
Like

Posted 09 January 2012 - 06:46 PM

I would not mind expanding my knowledge with someone else at all. I am usually able to learn more from other people than what I learn from books. I have decided to continue learning C# for the time being.

I do not mean to sound arrogant - or ignorant for that matter, but it seems I have a bit more knowledge about C# than yourself - for now. I could be misjudging you, though, I am merely judging you out of your post where you state you are

starting to get the hang of the basics!


I really do hope we can achieve our goals. But before we begin collaborating, I suggest you get a bit more experience first - I know how collaboration can be from school projects. I will be happy to help you however I can, though, and in no time you will (if you haven't already) get to my level of knowledge and hopefully I can share with you some of my collaboration wisdom.

In any case, thanks a lot for the suggestion. I really do believe it will help keep myself focused as well so we should definitely give it a go.


Regards,

Hard Phenomenon

#11 menyo   Members   -  Reputation: 407

Like
0Likes
Like

Posted 10 January 2012 - 02:44 PM

Thank you for your responses. I guess the reason why I wanted to get started with C++ is because I have a bit of an old school mindset, thinking that C++ beats C# by miles when it comes to performance.


Appart from you have to know what your doing (VERY well) to get at least a bit extra performance thats not what your goal is (or at least should be). Your goal is to learn programming so C# is the way to go. And believe me, once you start learning that and don't want to be a master programming at an AAA company you will stick with it.

Appart from that, get over the reading part. It is essential, video training is nice but it is often hard to follow and hard to lookup specific sections you might have difficulty with. Reading also stays a lot longer in your mind then watching a vid and see someone else do the work. 1 benefit, you HAVE to type in the code yourself. But if your copy/paste from a website your never going to learn programming anyway :D.

But the best advice i can give you is if you have the basics of C# already. Download XNA, do a tutorial and in a couple of hours you have controllable animated sprites flying around your screen. Start small and make pong, then arkanoid, then somekind of simple side scroller or a bomberman clone. I bet you love using XNA to develop games with you have all the freedom you need while the framework does the hard part for you so you can focus on game design right of the bat.

GL!

Current Project: TechnoFlux read all about it on my

DEV BLOG





Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.



PARTNERS