views:

456

answers:

10

If I'm going to learn programming first time, How i should start?

I don't know programming yet but I'm good at XHTML and CSS. my main aim is to learn first Javascript than second PHP. after having good command in Javascript I'll move to PHP.

all these i want to learn to get good command in all areas of Wordpress design and Development.

Although i can use basic javascript, jquery, PHP scripts in my projects but know i want to learn programming concept and want to get good knowledge.

A: 

Try this for JS w3schools

alejandrobog
Please don't. It is ancient, out of date, and gives some rather poor advice.
David Dorward
+7  A: 

I believe the language depends on your area of concentration.

Considering your background, I am going to assume you wish to pursue web development. I might be biased, but I think PHP is a good language to learn. However, I will suggest learning JavaScript and jQuery

Also, take a look at this question for which concepts to learn and in which order,

Anthony Forloney
+1 for good info
metal-gear-solid
@ Anthony Forloney - "However, I will suggest learning JavaScript" but Javascript and PHP are different thing.
metal-gear-solid
JS and PHP are different, but syntactically similar. Once you have JS basics down, PHP isn't too hard to pick up.
Braintapper
@Braintapper, Agreed. One thing I found during some web development of my own, were sites depending on Ajax support. If the OP is going down the road, he gets the opportunity to utilize his JS and PHP knowledge base.
Anthony Forloney
@Braintapper, @Anthony Forloney - You mean I should learn Javascript first, than jquery ,than PHP.
metal-gear-solid
IMHO, I learned JavaScript first (*as a class requirement*) then PHP (*as a personal goal*) and have been waiting on some free time to learn jQuery. I cannot say which orders works well for you, its however you feel you should tackle the languages, but thats the order I went with.
Anthony Forloney
@metal-gear-solid Prioritization varies on what your learning goals are first. If you're more interested in delivering content to/from a server (i.e., content from dbs, saving form data), then I would learn PHP first. If you're more interested in UI sugar and client side interactions first, then JS followed by JQuery.
Braintapper
+2  A: 

Algorithmical thinking is the most important thing. I'd start with C language, learn to work with memory - most of high level languages are based on C (C++, Java, C#). Once you can "think" as computer, you can start programming serious things. If you like web, go with html,css,php,javacsript :)

GoodLuck

Xorty
You forgot " and have fun":)
Petar Minchev
oh thats pretty obvious :)
Xorty
@Xorty - U mean if my aim is to learn PHP, Javascript then no need to go for c language
metal-gear-solid
I would skip C. I never learned it (outside of one college class which didn't really stick) and I've done well in web development in PHP, Ruby, and Javascript. It's something I've been meaning to learn, but I think it would have proven as a big barrier-to-entry if I had started with it.
Austin Fitzpatrick
@Austin Fitzpatrick - so no problem to start directly with http://www.tizag.com/javascriptT/
metal-gear-solid
@metal-gear-solid : personally I would not skip C. Learning php basics is matter of no big time. Learning algorithms is essential. I know what I am talking about - I know few developers who never programmed with structured code, they started with iternet coding and object oriented "drag and drop" programing ....As for myself, I definitely recommend learning C or similar language. Starting with C++ (but not object oriented) might be good idea also.
Xorty
Not to be presumptuous about metal-gear-solid's future "programming plans", but I tend to think learning C is going to be overkill, especially if the biggest short term goal is most likely integrate some gui sugar and maybe some simple DB CRUD. Not that I'm encouraging bad practice, but his end goal seems to be "Wordpress Design and Development", not creating the next Facebook.
Braintapper
+1  A: 

Programming is doing it. That's what I have learned from my experience. I read a lot of books but nothing remained in my mind until I dived into actually writing the code.

  • Try to come up with some ideas, and then try to program them.
  • Download source code from sites and figure out how they are done.
  • In case of problems, post your questions at forums or SO preferably.

Here are two good resources, however:

Sarfraz
A: 

The answer probably depends on how comfortable you are teaching yourself something and working through things on your own. If you are self-motivated, then get a good book on JavaScript and actually work through the examples. Don't just read and assume you understand, but try. Consider websites you already like and attempt to copy their code. As a reference, the book JavaScript, the Definitive Guide is unbeatable.

If you would prefer some structure, colleges and universities, especially community colleges in the US, often offer programming courses as part of career development programs. These programs can provide you an introduction to familiarize yourself with how to think in "computer."

justkt
A: 

Well, you can certainly go through books, etc but depending on your personality, you might be better off jumping feet first.

I personally would recommend that you try something smaller scale that can give you appreciable results fast. Other programmers will scoff at this idea...but you might want to start off in Excel's macro language, VBA. Many will laugh at it, saying it's not a real language, but it's really how you go about it. You can learn a lot by recording macros and reviewing the code and trying to modifying the code to make it more efficient. You can see results fast and it gives you a chance of getting hooked. Learn about Arrays, references, variable handling, etc. Don't depend on this language...though it and VB can be powerful in it's own right, you want to get yourself to C# as quickly as possible Use VBA as brief stepping stone.

Then take a "structured programming" course and try applying what you learn. Then learn C. You can see where the similarities are in the concept of programming between 2 the two languages.

Clownish Carnage
but my aim is to get good command over javascript and PHP, not .net
metal-gear-solid
Yeah, that was a lapse on my part...for some reason I was thinking general programming.
Clownish Carnage
A: 

I would start with http://www.python.org/. Python is not web related, but is easy to learn, adds discipline and gives you good basics.

Mikk
How you are saying Python is not web related http://wiki.python.org/moin/WebProgramming
metal-gear-solid
Sorry for this, I only learned basics in python and wasn't aware about Python web programming.
Mikk
A: 

You might also want to think about learning PHP using a framework like CodeIgniter, CakePHP, etc.

The frameworks help address some of the more mundane work (which sometimes represents the more difficult stuff for newbies) to prevent you from reinventing the wheel.

Personally, I'm biased towards CodeIgniter, because it has a very shallow learning curve and the documentation is top-notch. The other frameworks are also very good, but may be more intimidating to a budding developer.

Braintapper
+1  A: 

As Anthony mentioned, I would learn javascript first and then move into jQuery. jQuery UI elements do have a lot of great eye candy but learning jQuery also enforces and teaches some of the finer elements of javascript and it is hard to imagine javascript now without using the $ operator.

PHP is a great flexible and easy language to get working with as well since it is open source and integrates well into javascript.

I enjoy VB.NET and would even venture to say that C# might be your best option if you are looking to make a career out of programming as it seems to be where a lot of growth and hirings are taking place at least from my recent job searching and it would also teach true object oriented programming and perhaps make any other language much more understandable. Using Visual Studio does help alot in the early going with "intellisense" (Microsoft's name for a dropdown which prompts you for all available options while coding).

Nonetheless, I would definitely start with client-side javascript and then move to either server-side language.

Just my two cents.

BornReady
A: 

If you want to learn javascript programming, I would say you go for mootools instead of jQuery. Mootools has a stronger javascript api and can be used more moar serious tasks than processing a HTML DOM. See http://jqueryvsmootools.com/ for details

For server side, learn ruby. Benefit being you can deploy your application to ruby as well as java/.net servers (using jruby, ironruby)

Midhat