NYCPHP Meetup

NYPHP.org

[nycphp-talk] Learning to program the right way

Gary Mort garyamort at gmail.com
Tue Jan 24 11:11:42 EST 2012


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.



More information about the talk mailing list