On 1/23/2012 10:52 PM, Froilan Cajayon Mendoza wrote:
Gary,

I think the key to programming the right away is to understand the logic and structure of solving the problem the right way. This is where algorithms and data/programming structures come into play.

My first-time-in-programming students sometimes get frustrated because the first few sessions of my programming class we talk about seemingly mundane non-programming problems (like describe the detailed steps you'd take to get from one subway stop to another and note possible errors). But by training them how to think and solve the problem logically, it is easier (relatively) for them to grasp the need for, let's say, a loop or a class, regardless of programming language. The next step is then to build on specific syntax (or lack thereof in PHP :)) and nuisances of the language you're teaching (enjoy your Hello World program), and then you can talk about the tools mentioned in your post.

Personally, I don't think PHP is a good "first" language, so I expect people picking up PHP to already have covered "basics". :-)

While PHP can be run from the command line, it's biggest usage is in web design. So learning PHP involves using MySQL, Javascript, HTML, and CSS. Since all of that needs to be covered as well, you might as well do it all right.

Also, "checking bad code" into version control is productive. When someone is first learning code, they may well 6 or 7 different ways of doing something. By the time they get to number 7, they may decide that the third solution was the best. Without version control, it means they will be making bad filename choices[attempt1.php, attempt2.php, attempt3.php] or relying heavily on their editors undo function. Wheras if they were using version control from the start, then they can revert to the version they saved on the third attempt, and by the time their done with the course they will have the habit of trying lots of things and reverting code when needed.
_______________________________________________
New York PHP User Group Community Talk Mailing List
http://lists.nyphp.org/mailman/listinfo/talk

http://www.nyphp.org/show-participation

Reply via email to