I'm interested in starting over. Any suggestions?

Started by
20 comments, last by sl4ppy 19 years ago
Quote:Original post by uncle_rico
A friend of mine is taking CS in school and he would always have these tedius little projects to do. For example, he had to make a grocery store simulation where each cash register line was a queue and it had to work in a very specific way. Sounds tedius as hell.


It is tedious as hell. I've loved programming for quite a few years, but I can barely bring myself to do CS programs for two reasons 1) They're easy. If there's no challenge, it's not going to make me a better programmer. 2) They have no point other than to teach you how to program. Since I already know how to program and can understand the CS concepts just fine without homework, I see it as a patronizing waste of my time.
Disclaimer: "I am in no way qualified to present advice on any topic concerning anything and can not be held responsible for any damages that my advice may incurr (due to neither my negligence nor yours)"
Advertisement
Just mentioning, you can still continue "drawing, painting, writing stories, playing guitar, and writing music" to get some outlet for your creativity. I'm both a programmer and a musician myself, and I find that both of the activites contribute to satisfying my need to do something creative.

For the programming part, you seem to have the focus that I think is necessary for the quite heavy task of learning programming. Just give it time. If it still doesn't feel right after a while, then (as many others here pointed out) maybe programming isn't the right thing for you anyway.

But as I said, if you feel interested and really focused on the task, go ahead. Read a book, take it slow, but also start programming some simple tasks by yourself, then you can see for yourself what it is that you can or can't do. For those things that you can't do, try reading some more on those things.

And a final piece of advice, if you have problems with one book, try another.
Though I didn't learn from it, I've seen the Learn C++ in 21 days book and I think it is a good book if you are starting from scratch, you will learn everything and it's pretty well written. Thinking in C++ is not as good as this book (but it's free so it kinda balances it out).
First of all, i agree that "21 Days" books are a waste. You need something more solid, but still newbie friendly. The "Thinking In C++" books are good, especially for beginners.

You will find that you will not learn all of C++ and then go and program some great game. What will happen is that you will learn just enough to be dangerous and then go try to make a great game. You will then experience humiliation, frustration, and many other things, then fail. Then you will learn about pointers. You will then tackle the problem with renewed zeal until you find that your meager knowledge is still inadequate. Then you will learn data structures, and say "Aha!", then fail, then classes, then fail, then STL, then fail. Eventually, your failures will mass together and form a greater learning experience for you than any book would have been. There is rarely any "golden way", just a lot of ways not to do things. With any project you take on, half-way through you'll always think to yourself, "I wish i woulda..." Eventually you'll end up with a decent body of knowledge that lets you actually create something with some degree of fluency and structural integrity.

And this is what the rest of us call "fun" ;-)
leiavoia, yeah, totally! :)

I mean, the greatest way to learn ANYTHING is to do it. Learning to play the guitar? Damn, nobody can teach you to be Clapton in a day (or, more specifically, 'in 21 days' ;))! Just pick the guitar up and start to play whatever you want! Then, in some years, you will be able to play nicely. Same with programming! Just program! I am also a noob. I am just starting my way with C#. But already I've made a Process Killer all by myself which gave me a great deal of exp. Just think of a program and write it! Of course, don't think of Photoshop or 3DS Max, but something simple :)

I'd definetly say that a glass is half-empty!
The book I reccomended walks you through creating your own array class. It is scalable, has bounds checking, you can do assignments like array1 = array2, etc.

It also walks you through the creation of an OO elevator simulator, from design(using UML) all the way up. In the 5th edition they changed the elevator simulator to some sort of ATM thing or something.

It's pretty good for beginning to intermediate level. I assumed that you'd call yourself beginning to intermediate if you skipped chapters on classes and inheritance. If that is not an accurate decription of your level, then don't go rushing out to flush 90 bucks down the toilet. helloworld to pointers is about two fifths of the book.
skulldrudgery--A tricky bit of toil
Don't give up. These things take time.

If you really want to stick with C++, IMHO the single "biggest bang for the buck" thing you can do right off the bat is learn to use and love std::string. It is an accessible entry point towards learning how to use the nice bits of the standard library, and makes things the seem like they should be easy, just about as easy as they ought to be (as opposed to the veritable minefield of char* hackery). Oh, and you'll be using OO without even realizing it - and from there, you can start to pick up the principles of good class design. [smile]

But yeah, going with Python would be a really good idea too.
The board forgot my login in mid-post AGAIN. GRR.
Lots of good ideas here.

From personal experience just using the language helps the most. I learned C++ back in middle school, but even then I learned it by writing my own programs, not by reading straight out of books and doing exercises. The latter were simply way too boring for me.

Even now I use this strategy to learn new languages, and even new APIs. I learned Python by writing tons of little useful scripts, and eventually wrote an IRC bot in it. I tried learning Perl by writing another IRC bot, but went back to Python after I finished and saw how ugly the language was :) I learned C# and Managed Direct3D by writing a 3D stencil-shadowing implementation, and even now I still write a lot of little C# apps to learn various parts of .NET. The code for a lot of these programs fills only a couple of screens, but they help a lot.

They're short and fun, and can be quite useful too.

This topic is closed to new replies.

Advertisement