Compulsory PHP instruction
January 11, 2006 9:51 PM   Subscribe

I've received a $1000 grant that I can use to learn PHP, in order to eventually write an education-specific application. I could attend a programming boot camp this Summer, take an online course, or blow it all on books and software. Of course, I have a bunch of php/mysql books already. Has anyone gone to one of those programming boot camps, and was it worth it?
posted by mecran01 to Education (15 answers total) 1 user marked this as a favorite
 
PHP is simple enough that you can just write with it out of the box, which is by far the best way to learn. I'd devote your time to meticulously planning and laying out how the app will work, or building some simple apps and learning from your mistakes.
posted by cillit bang at 10:12 PM on January 11, 2006


If you're already a programmer and you're wanting to pick up another language (PHP) then I'd just install XAMPP and start playing with it. The php docs are excellent, as are the online tutorials, and you can start playing with it straight away.

If you're trying to get your head around programming as a whole however then it's probably easier to have some tutor help.
posted by holloway at 10:13 PM on January 11, 2006


Response by poster: Hmmm..

Holloway: you know, I should probably get some background in basic programming and program design, because I think I can learn the actual PHP on my own, and if I had some good design fundamentals it would probably save me a lot of time further down the road. Or I could actually focus on the mysql side of things, which I find more intimidating.
posted by mecran01 at 10:19 PM on January 11, 2006


Yeah, and by all means start learning with PHP. It's a forgiving language that's great for beginner programmers.

Do you know HTML? Because (in most cases) PHP just produces HTML, so you'll want to learn that first.
posted by holloway at 10:33 PM on January 11, 2006


Response by poster: I've got really basic html skilz, and understand CSS but don't code in it.
posted by mecran01 at 10:37 PM on January 11, 2006


This isn't meant as snark.

You state that "have a bunch of php/mysql books already" but don't know PHP and have no "background in basic programming and program design". PHP is a pretty simple language, with fewer "gotchas" (memory management, pointer arithmetic, virtual dtors, the rule of three, seg faults, assembly code, blah, blah, blah) than mant other languages. And sql is just set manipulation, with some syntax rules.

Yes, complex stuff in any language can be difficult, but the learning curve with PHP and SQL isn't steep.

If you've already got "a bunch" of books, the question arises, why haven't you already learnt to code php and sql from the books? What is it that the books aren't doing for you? If you can pin this down, it might give you some insight into how best to proceed. Have you done "hello world" yet?

There are plenty of web sites that offer PHP tutorials and example code. Are you not using those, or are they not helpful to you? Again, pinning down what's not working for you and why will help you figure out what to try next.

And it's odd to read that someone understands CSS but doesn't "code" in it: while CSS has some complexities (parent vs. ancestor vs. sibling selectors, pseudo-classes, getting it to work at all in IE), it's more markup than "coding", and really "understanding" would mean you could apply it. In actual coding, I might know C, but not know the Composite Pattern or Dijkstra's Algorithm, and so might be unable to code to some requirement (without a reference book); there's certainly some room for this in CSS markup, but a lot less.

Best of luck.
posted by orthogonality at 11:13 PM on January 11, 2006


mercan01, if you already knew one programming language, learning another with a good book and some examples is not too difficult. Since you don't, you may need to be shown things like flow control, data types, and so on, or else you might intuit these concepts right away. Neither reflects your intelligence, necessarily: different people learn better in different ways.

The best way to find out is to just plunge right in and see how you do. I would dissuade you from picking up a book on general programming fundamentals. Programming is something best learned through praxis and experimentaion; you can acquire the theory later. A good introduction to PHP should cover the basics.

In short: go for it! Start reading (and typing out the examples of) one or more of your books, and see how well you do. Remember you can turn to IRC (#php on irc.freenode.org, among others) and message boards for support.

Finally: are your employers dead-set on PHP? If not, I recommend you take a look at Ruby on Rails, which is easier and more fun to program (IMO). Tim O'Rilley said that “Ruby on Rails is a breakthrough in lowering the barriers of entry to programming." Check out the website!
posted by ori at 12:44 AM on January 12, 2006


Response by poster: If you've already got "a bunch" of books, the question arises, why haven't you already learnt to code php and sql from the books? What is it that the books aren't doing for you? If you can pin this down, it might give you some insight into how best to proceed. Have you done "hello world" yet?

I don't have any problem with understanding basic PHP, and I've done some basic exercises. It's a question of finding the time to work on it consistently.

Finally: are your employers dead-set on PHP? If not, I recommend you take a look at Ruby on Rails, which is easier and more fun to program (IMO).

RoR is pretty cool, and it's the new hotness, but my only concerns about it are that I want the resulting application to be as easy for others to implement as possible, and *everyone* has php on their hosting service. Also, I am not sure if the same excellent support community exists for Ruby at this point. Finally, knowing some PHP lets me fiddle with the massive library of existing scripts and possibly customize some existing applications more readily.
posted by mecran01 at 6:14 AM on January 12, 2006


All excellent reasons. Stick with PHP. XAMPP is great. Could the budget be used on hardware? "Development server" sounds plausible enough...
posted by blag at 7:04 AM on January 12, 2006


Perl sucks and so does MySQL. Therefore XAMPP sucks.

You should get a cheap hosting plan with some of that scrach, with MySQL and PHP already included. Then you'll just need to upload your PHP files, and you won't need to worry about figuring out how to host it later. There's a really good PHP based MySQL Management system you can upload and use pretty easily called phpmyadmin. You just upload it and go.

The best thing to do is figure out exactly what you want to do, and then try to do it, figuring out what you need along the way.

If you want to learn basic programming first download the JVM and writing command line programs in Java. There are plenty of books for doing that. Most languages, including PHP and java use C style syntax.
posted by delmoi at 7:30 AM on January 12, 2006


Get a nice new laptop (if that's an accepted use of the money) and teach yourself from your stack of books.
posted by Zed_Lopez at 10:48 AM on January 12, 2006


I think it depends on your learning style. Some people, such as myself, just can't learn from a book. I need to have a teacher, or someone knowledgeable to guide me, because the way I learn is by asking lots of questions. Overgeneralizing, books force me to have a linear approach to the subject matter that just drives me nuts! Same thing with online learning - it just doesn't work for me when I'm starting to learn a subject.

Once I've gotten a good overview exposure from a teacher, *then* I hit the books and online resources, and they make a lot of sense to me.

So, how do you learn best? If you like learning from classes, just find one, and ask the instructor if you can sit in for a bit to evaluate whether you want to actually register. I've been learning database stuff from a local university extension division, and it's been great. Much better than when I tried to figure it out myself. Never been to a boot camp, so I can't comment on that.
posted by jasper411 at 12:50 PM on January 12, 2006


Has anyone gone to one of those programming boot camps, and was it worth it?
posted by craniac at 12:56 PM on January 12, 2006


Response by poster: This isn't meant as snark.

Dude, that was like the snarkiest sounding thing I've read in a while, although I believe your advice is good and you were sincere in giving it, for which I thank you.
posted by mecran01 at 9:53 AM on January 13, 2006


mecran01 writes "Dude, that was like the snarkiest sounding thing I've read in a while"

You should have seen the first several drafts.... ;)
I've received a $1000 grant that I can use to learn PHP elementary education, in order to eventually write an education-specific application teach fourth-graders. I don't have any training or background in education, and no knowledge of basic paradigms/methodologies/best practices.
Of course, it's a flawed analogy, but, as a professional software writer -- well, like anything, from being a short-order cook to teaching, the more you learn about it, the more complexity and subtlety you comprehend in your subject, and the more you see how even a smart amateur could obliviously screw things up.
posted by orthogonality at 7:14 AM on January 15, 2006


« Older mysterious happenings?   |   Latex problems Newer »
This thread is closed to new comments.