So my question to you is, what would you think if PHP was taught as your first programming language in college? I would ask this as a poll but I want a little more in depth responses..
hoo..hum...
Moderator: General Moderators
Its funny how teaching theory goes around over time. Back in the day, Pascal was thought to be a nearly perfect teaching language for just that reason - lots of power, lots of things that students needed to "get" to do a solid program.Jenk wrote:It is not the language you are teaching/learning, it is the methodology and the practices.
C++ is probably the best to learn with as it is the "most raw" language, you have to do nearly everything, unlike PHP which in comparison, does most of it for you.
First year CS with PHP? Ok, what do they teach? They still teaching "Data Structures and Algorithms" and "Fundamentals of Software Development" in the first year? For "Data Structures and Algorithms" I would want something more strongly typed than PHP. For the "Fundamentals of Software Development" I would want to stress OOP and while PHP could probably cover the fundamentals - I'd prefer something more suit to the subject. Something more strictly OO'ed.Charles256 wrote:I actually preferred learning PHP first, it made c++ make so much sense the second time around. any other input?
heheheRoja: What??!! Championing Python over php?? BLASPHEMER!
What is a programming language? What is a scripting language? Where lies the difference? Personally, i think it's pretty hard to make a formal distinction..infolock wrote:I don't know honestly. PHP isn't exactly a programing language, it's a scripting language #1.
What is a 100% OOP style language? And how has the implementation of the PHP object model kept you from implementing something?infolock wrote: Simply because while php has an OOP style, and it has drastically improved, it's still not a true 100% OOP style language.
Actually, apart from the early C++ macro's i haven't seen much C code that uses OO features.infolock wrote: C, however, will teach you all the sides of OOP you could ever wonder. Also, C teaches you about memory managment which PHP will not.
The question is: What do you want them to learn? Machine specific stuff? Memory management? Or do you prefer to get things done, focussing on algorithms and patterns?infolock wrote: Where you would learn how to make something work in PHP, you won't understand how it is effecting memory unless you can understand it from a C perspective. While php has functions that allow you to do memory dumps and what not, you cannot control those memory sectors, as again it's a scripting language, not a machine language such as C.
Yeah my uni taught me VB in our first year as our introduction to programming. Bear in mind that I was on a multimedia course so I'd say 60 - 75% of the class was actually coming in from a graphic design background. Me? I was pretty open minded, which was just as well cos it turned out I pretty much sucked as a designer!jayshields wrote:Well at my college we learnt Visual Basic. I'm still learning it now, it's awful.
I could write this out, but this site goes into a much deeper response to these questions than I can personally respond with. http://home.pacbell.net/ouster/scripting.htmltimvw wrote:What is a programming language? What is a scripting language? Where lies the difference? Personally, i think it's pretty hard to make a formal distinction..infolock wrote:I don't know honestly. PHP isn't exactly a programing language, it's a scripting language #1.
What is a 100% OOP style language? And how has the implementation of the PHP object model kept you from implementing something?infolock wrote: Simply because while php has an OOP style, and it has drastically improved, it's still not a true 100% OOP style language.
Actually, apart from the early C++ macro's i haven't seen much C code that uses OO features.infolock wrote: C, however, will teach you all the sides of OOP you could ever wonder. Also, C teaches you about memory managment which PHP will not.
The question is: What do you want them to learn? Machine specific stuff? Memory management? Or do you prefer to get things done, focussing on algorithms and patterns?infolock wrote: Where you would learn how to make something work in PHP, you won't understand how it is effecting memory unless you can understand it from a C perspective. While php has functions that allow you to do memory dumps and what not, you cannot control those memory sectors, as again it's a scripting language, not a machine language such as C.
I think that is a reason why most colleges teach Java instead of C++ as introduction language. And in the past that language used to be (Turbo) Pascal.
Usually they also spend a couple of hours playing with a dynamic/interpreted language like perl/php and visual basic. Just to make the student notice that for each problem there may be a more appropriate solution.