Jump to content

A Little Lost Sometimes...


psquillace

Recommended Posts

Hello All:

 

Sometimes I get a bit lost when learning php. I mean, I am trying to learn as best as I can and when I learn something I take on a project that I invent in my head to make sure that I learned it. Sometime though I get lost on the subject and it is a bit discouraging.

 

Is this normal, to get discouraged in learning coding in general as this is my first code I am learning.

 

well, aside from HTML but, that was not that hard to pick up.

 

ANy thoughts of wisdom here would be appreciated.

 

PM

 

 

 

Link to comment
Share on other sites

HTML is just markup and therefore requires no classic 'logic' to accomplish anything in particular (other than item placement and decoration). PHP is vast in comparison, so obviously the learning curve is going to increase exponentially. It's normal to feel like you have learned something, only to realize how much you haven't learned yet.

 

Think of programming like learning a martial art. Any one move by itself is rather insignificant, or any one move can have a devastating impact. Putting several moves together into a 'combination' gives you the greatest flexibility to handle any situation. You have no way of mastering any particular combination without first mastering the individual moves that make up that combo. It is perfectly normal to get discouraged from time to time... musicians go through it, actors go through it, engineers, designers, etc etc... If it becomes more to you than a passing 'hobby', then you will always gravitate back to it to learn another 'move' and increase your base knowledge. One day you will truly wake up and realize that, since you are probably answering more questions than asking, you are now a 'programmer'. You will never learn everything, and always be asking questions, but one day the tide will definitely turn for you.

 

Best,

PhREEEk

Link to comment
Share on other sites

Thanks Phreek

 

I think you hit the nail on the head with me when you said

 

One day you will truly wake up and realize that, since you are probably answering more questions than asking, you are now a 'programmer'.

 

I was always under the contention that I must not be getting this BECAUSE I have all these questions. Thanks again for your very timely answer to my doubts.

 

Paul

Link to comment
Share on other sites

You need two things to learn effectively in most areas:

 

1) The will to practice it on your own

 

2) A mentor who knows better / more than you

 

I started teaching myself c++ when I was 15 from a "Teach Yourself XYZ in 21 Days."  I rewrote all of the examples in the book, just to get into the habit of writing code.

 

When I felt I knew enough, I started branching out and writing small programs of my own.  The very first program I wrote on my own displayed a menu, allowed a user to make a choice, and then performed actions.  I think it was supposed to keep track of bar tabs.

 

Rewriting something from a web tutorial or out of a book is a great place to start.  There is more to be gained from actually rewriting it than just copying and pasting it and seeing if it will compile or work.

 

However, rewriting code verbatim can only take you so far.  Eventually you have to write your own code.  This is where #1 from above comes in.  Give yourself a small project and then see it through.  Don't overshoot, keep it simple, and all that.

 

After you've written it, analyze your work.  Could you have designed it better?  If you completed the same mundane task, call it A, a bunch of times, is there something you could have done to have made that easier?  Think about if you wanted to build off the code you wrote to enhance the application.  How easy would that be and if it wouldn't be easy, why not?  Go through this all on your own and find your own answers.

 

Now rewrite it and see if it's better.  This is why you keep the project simple.

 

Repeat this process a few times until you can't possibly do it any better.

 

Finally, seek out your mentor and show them what you've done.  Ask for their advice.  "This is how I accomplished this task with what I know.  You know more than me, how would you have done it?"

 

That is how humans learn any and all subjects.

Link to comment
Share on other sites

Roop,

 

Thanks so much for your advice on this subject. When I first started to learn php via www.lynda.com I was sucking it all in as fast as I could because I wanted to know it all. Then I took a break because that was not working, just listening and watching video tutorials.

 

My second try around, I took the approach you have laid out above and decided the reason I am not learning is because I am not taking the time to do it or practice it.

 

As long as I got phpfreaks, I think I will have enough mentors on this subject. :D

 

 

Thanks again for your advice and help on this matter.

 

Paul

 

 

 

Link to comment
Share on other sites

Give yourself a small project and then see it through.  Don't overshoot, keep it simple, and all that.

 

This concept is so lost among a vast majority of n00b programmers, and many posts on the PHP Help boards reflect on how people get way over their head very quickly. Taking on a project that is, for all intents and purposes, impossible for you to accomplish, will only lead to premature coder burn-out. It also leads to very bad coding habits, as inevitably, you are going to utilize about 100 really bad workarounds to do things that there are built-in functions or libraries already established to handle. The coder who puts the time in that is necessary to digest a minimum number of concepts, and keeps his projects focused on mastering just those concepts, will learn quicker, better, and in the end has increased the odds of becoming a peer among other programmers.

 

Just remember that getting discouraged occassionally is normal, however if you 'burn out' because you are chasing projects that exceed your capacity (rather than just challenge!), then that becomes quite a bit more challenging to overcome.

 

PhREEEk

Link to comment
Share on other sites

You have it easy, I had to learn with C++, and then move on to Perl. Ever see Perl code? And all the functions took references and changed the input parameters - it wasn't $string = trim($string), it was trim($string), which seems nice till you realize you can't chain anyway.

 

Oh, and Delphi, which was hard because it was more strongly typed than C++ - there were function to convert big ints to little ones!

Link to comment
Share on other sites

I guess I shouldn't mention that I started out programming Commodore machines (64, then 128), and went through BASIC, BASIC 7 and finally machine language through a ML monitor (now that was a pain in the arse!).

 

I was really stunned how similar PHP was to BASIC. The same For-Next and While looping, associative arrays, GOSUBs (poor man's functions), etc etc... I was convinced that PHP was developed as an extension to BASIC, they were so extremely similar. Needless to say, I was very lucky there, and the learning curve for me was more about syntax and formatting. The flow and logic were already developed.

 

Yah, I shouldn't mention all of that...  ::)

Link to comment
Share on other sites

Man C64/128.... those were the days.

 

I remember programming a image of Alfred E Newman from Mad magazine. They had this 5 page pull out once in one of their issues where you could make an image of him appear on the screen.

 

 

Just dot matrix but it did cost me $1.75 and a Friday Night.... ;D

 

 

Link to comment
Share on other sites

This thread is more than a year old. Please don't revive it unless you have something important to add.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.