Re-starting?

Started by
16 comments, last by matrisking 11 years ago

It's not that I know C++. I really don't know the language. I learned it wrong (Basically, the book I learned it from explained everything wrong and had many, many errors). I want to start over with a new language and learn it correctly.

You are talking about two separate things. You can't "learn C++" incorrectly in reality, you just were taught to *use* it in an incorrect manner. Using the language "properly" is in effect learning to program. If you move to Python or Java, you are only changing the context of the problem, not removing the fundamental issue. I don't mean to question your abilities but basically if you don't push through and realize the fundamental problems as "usage" instead of knowledge of the language, no one can really help you. Switching languages just gives you new things to learn for a bit but eventually you end up in the same exact place.

You don't understand what I mean: I don't actually understand how the language works. I didn't learn pointers, arrays, variables, classes, or almost anything correctly. I essentially learned how to use them, however how I was taught was wrong (and has led to me having many errors when I talk about C++). I'm going through Java using a good book so that I can understand the languages fundamentals correctly from the beginning.

(That and I want to learn a new language, I've spent almost three years with C++ :))

I'm a game programmer and computer science ninja !

Here's my 2D RPG-Ish Platformer Programmed in Python + Pygame, with a Custom Level Editor and Rendering System!

Here's my Custom IDE / Debugger Programmed in Pure Python and Designed from the Ground Up for Programming Education!

Want to ask about Python, Flask, wxPython, Pygame, C++, HTML5, CSS3, Javascript, jQuery, C++, Vimscript, SFML 1.6 / 2.0, or anything else? Recruiting for a game development team and need a passionate programmer? Just want to talk about programming? Email me here:

hobohm.business@gmail.com

or Personal-Message me on here !

Advertisement

I'd like to know what you think you learned so wrong, and what book you read.

If this post or signature was helpful and/or constructive please give rep.

// C++ Video tutorials

http://www.youtube.com/watch?v=Wo60USYV9Ik

// Easy to learn 2D Game Library c++

SFML2.2 Download http://www.sfml-dev.org/download.php

SFML2.2 Tutorials http://www.sfml-dev.org/tutorials/2.2/

// Excellent 2d physics library Box2D

http://box2d.org/about/

// SFML 2 book

http://www.amazon.com/gp/product/1849696845/ref=as_li_ss_tl?ie=UTF8&camp=1789&creative=390957&creativeASIN=1849696845&linkCode=as2&tag=gamer2creator-20

It's not that I know C++. I really don't know the language. I learned it wrong (Basically, the book I learned it from explained everything wrong and had many, many errors). I want to start over with a new language and learn it correctly.

You are talking about two separate things. You can't "learn C++" incorrectly in reality, you just were taught to *use* it in an incorrect manner. Using the language "properly" is in effect learning to program. If you move to Python or Java, you are only changing the context of the problem, not removing the fundamental issue. I don't mean to question your abilities but basically if you don't push through and realize the fundamental problems as "usage" instead of knowledge of the language, no one can really help you. Switching languages just gives you new things to learn for a bit but eventually you end up in the same exact place.

You don't understand what I mean: I don't actually understand how the language works. I didn't learn pointers, arrays, variables, classes, or almost anything correctly. I essentially learned how to use them, however how I was taught was wrong (and has led to me having many errors when I talk about C++). I'm going through Java using a good book so that I can understand the languages fundamentals correctly from the beginning.

(That and I want to learn a new language, I've spent almost three years with C++ smile.png)

Put this in perspective then. You need a change of pace. I can understand that.. :)

I don't mean to be an ass, you will do what you want to do. I get up in arms when folks say learning something "wrong" in any language prevents figuring out how to progress forward. I simply don't believe in that no matter the language. So, I wish you the best but arguing reasons, I'll stop.. :)

I wouldn't restart, cause you really cant "restart" because you obviously know the basics. Just fix what is broken and move forward. You cant always go back cause you wont ever move forward. Grab a good modern book on C++ and see what is wrong. Then fix your wrong code into the right code. That way you'll get practice and learn more things.

I don't think the OP was asking for advice on whether or not to start over (he seems to have already decided on that), but rather which language to start over in. To me, languages are like print versus cursive writing. They are the same thing, they just look different. Pick whichever one you want. Java is going to be closer to the syntax of c++. If that is a plus for you, then pick Java, otherwise if you fancy the syntax of Python then go for it. Programming principles for most languages are going to be the same types of challenges in any language. That is where programming gets hard so eventually you are probably going to run into the same problems you are running into in another language as you are currently running into in c++, it is just going to take you longer to get there. Although, I will say the syntax of c++ is more complicated than most languages because it has so much more flexibility.



Why do you feel like you need to start over for a third time with Python?

Was there a certain part of Java that stuck out to you as disappointing?

Making all these changes can be stressful, so I would try not to move over to Python unless you see some glimmering reason why you want to use it so much more.

Stay gold, Pony Boy.

His C++ seems ok I just think he needs to get more familiar with things for example posting examples of how he has learnt arrays wrong or whatevs and ask for clarification.

I don't think even Bjarne knows C++ inside out ;)

"Most people think, great God will come from the sky, take away everything, and make everybody feel high" - Bob Marley

No offense to the OP, but the premise of this thread seems a little strange to me. As someone already mentioned, if you're just looking for a change of pace or if you're not enjoying C++, then by all means start fresh with something else.

However, don't discount the lessons that you learned by going through learning something the "wrong" way (however you define it) and then starting to correct the course. You probably learned more than you realized and if you know enough to realize that there was a better way of doing things, then you probably gained some valuable insights in making those discoveries.

I think statements like "I really don't want to go through C++ again." are a little off. It's not like anyone "goes through" a language and then is "done." With whatever language(s) you decide on, just remember to approach learning as an ongoing process and not something you "finish" with.

This topic is closed to new replies.

Advertisement