I'm a Stanford University student studying business. I want to start my own technology firm when I finish my studies and have decided to learn to code. Having a good knowledge of programming will give me an advantage in the tech industry and will also give me an appreciation for the work programmers do. I can't squeeze any more classes into my college schedule (due to both time and cost), so I'm learning to code on my own. Just started studying Bjarne Stroustrup's Programming Using C++ and searching for an excellent C++ mentor who can help when I'm stuck. Posting questions on forums seems to be hit and miss and as my time is very limited, I'd love to have someone I can go to directly.
I'm a complete newbie to programming but not someone who has to be spoon-fed everything. I'm a self-learner and I am very detail oriented. Ideally, my mentor will be very knowledgeable in C++, organized, able to explain things clearly, and has some time to guide me and help me through difficult areas. Someone who can respond quickly is a must.
In return for the mentoring, I offer help in my areas of knowledge (business). It could be the writing of a business plan for a venture, creating a marketing plan for an app, obtaining financing for a business, finding programming jobs, etc. The help given will be based on my mentor's needs, so this can be discussed.
Thanks for stopping by and please feel free to offer any suggestions on how I can find a good mentor,
My best advice would be to learn from internet tutorials. You really don't need a mentor at the moment, just try to get into coding. If you don't like it and want to quit (though I'd recommend sticking with it), then you don't lose any money (if you end up paying the person), only time.
chrisname wrote:
You don't need to work that hard. What you need to do, is go through a programming tutorial (the one on this website for example). Don't do too much in a day, or you will get bored and unmotivated. Don't set a goal based on time, that doesn't work. You'll forget alot of what you learn if you stop halfway through a lesson. Work through the tutorial on this website ( http://cplusplus.com/doc/tutorial/ ). Aim to get through two lessons a day. Don't stop partway through a lesson (unless it's for a short break, that's a good idea) and don't do too much in one go, or you simply won't remember it. I recommend reading and copying out each example (not copy and paste; type it yourself, this will help you to understand what you are doing), compiling it, seeing what it does when you run it and modifying things to see what changes. I also recommend you look at other people's code (one of the things that has helped me is to take other people's broken code and try to fix it, although don't get too hung up on this because it is hard to read other people's code when you first start out). When you are reading, try to rephrase things: "If you can't explain it simply, you don't understand it well enough." (Albert Einstein).
[snipped due to irrelevance]
Throughout all this you should remember that it is important to pace yourself. Don't try to absorb too much at once or you'll forget lots of it. And don't stay up until 3am when you have an exam the day after next...
This quote may be slightly outdated, but it still has some valuable information that you can salvage.
Thanks for the advice. I think I do need a mentor because I am a beginner in programming. Right now, for instance, I am stuck on a small issue this just brings my whole learning to a halt until I figure out what's wrong. I have looked it up on the internet, I have posted it as a question on different forums. No luck. I think when you've done coding for a while it's easy to take for granted all the little details that go into making the code work, but in the beginning when you have no knowledge of these things, one small detail can completely halt your progress.
I'm definitely aware of that. In my beginning days this was common for me. Asking questions (I'd say this forum is the best at helping, and yields speedy answers) always helped me solve it. Even though you've asked other places, try asking here (if you didn't already).
Right now, for instance, I am stuck on a small issue this just brings my whole learning to a halt until I figure out what's wrong. I have looked it up on the internet, I have posted it as a question on different forums. No luck. I think when you've done coding for a while it's easy to take for granted all the little details that go into making the code work, but in the beginning when you have no knowledge of these things, one small detail can completely halt your progress.
@Monroe that is because you jumped into advanced features and not beginner features. I showed some links to beginner related tutorials that may help you learn on the other thread.
If you want a mentor you can join the ACCU. It is free to get a mentor once you are a member.
EDIT. If I remember correctly it is free to join and you can choose whether or not to pay a subscription for the journals they publish.
http://www.accu.org/
I am stuck on a small issue this just brings my whole learning to a halt until I figure out what's wrong.
Programming is a lot like a structured algebra problem. If you follow all the steps to solving the problem carefully and plan what you are going to do and how you are going to do it ahead of time, you will come up with a right answer almost always. Sometimes, you might miss a minus sign, which will get better with practice, but until then just carefully read over your code slowly and sometimes even out loud to find small errors.
For instance, if you have a for loop that is iterating over an array, but for some reason the program is crashing because you are accessing an element of the array that doesn't exist, you might go through your code like this (comments would be what you say to yourself):
1 2 3 4 5 6 7 8 9 10
int main() {
int* array = newint[40]; // This creates a pointer and then allocates 40 integers and assigns the location of the allocation to the pointer.
// *initialize here*
for (int i=0; i<=40; i++) { // first i will be zero, then it will go up to 40
array[i]; // this will access the array and do nothing with it for members 0-40. Oh wait, arrays start at zero and end at length-1, I need the for loop to only go up to 39... I better change <= into <!
}
delete[] array; // edit: just added this, I realized I was demonstrating a bad habit of not deleting what you allocate with the new operator
return 0;
}
And this was me for the first six months or so of my programming. A few problems (specifically related to OpenGL) I had for a month or longer at a time, but I eventually worked them out.
Even now, I make stupid mistakes like that. I just slowly read over my code and find what is wrong.
If your mistakes are syntax errors, these should be very easy to fix as the compiler tells you exactly where the error is occurring and what the error is so you can just google it. Runtime errors and mistakes in your code are the hardest to fix.
U don't need a mentor, I always thought the same as u.. But as long as u got a good book something like c++ primer 5th edition,and these forums and ur done. I'm self thought to and I'm 13 and I'm going on really good. Just think about it :)
Hey, if you need any more help (aside from what those above me have suggested), send me a pm and I'll try and get in contact with you via Skype. I'd be happy to try and help you as best as possible.
After All of Post...
you can email me your Questions too, i'll answer you as soon as i can, But use advice of avilius and Yellow pyromid, but i know that finding Questions in books and internet(Books more) is hard, because of that, you can send me your questions at : soram.cpp@gmail.com and on amir_hassanli@yahoo.com
but i check my google account more.
Have nice time. :D