How many years to become expert in php
Moderator: General Moderators
How many years to become expert in php
I wonder how many years do I have to spend learing php to become really good and what material should I use to achieve that.
I am web designer and seo so my lack of php is giving me headaches sometimes
I am web designer and seo so my lack of php is giving me headaches sometimes
-
alex.barylski
- DevNet Evangelist
- Posts: 6267
- Joined: Tue Dec 21, 2004 5:00 pm
- Location: Winnipeg
Re: How many years to become expert in php
6 months and previous programming experience, maybe 1-2 years without any prior programming exeprience will get you "started".
Learning the language PHP itself is easy, it's all the others details like knowing environment, HTTP/FTP, then there is SQL and so on.
After about 5-6 years of doing that, you'll begin to investigate ways of making code better at which point you make a slow transition from a "programmer" to something more of a "designer" or "architect".
When you look at software from a birds eye view, your software suddenly changes from a monolithic mess of spaghetti to a clean, easy to comprehend design split into multiple modules or files.
I'm not sure I would suggest getting into architecture right off the hop. I think you need to spend a few years toiling over 500 line complex functions before:
1) You get a sense of what simple versus complex is
2) You actually appreciate your years of experience and push even harder to simplify your code
Writing simple software is actually very challenging -- but gets easier with experience.
You have to actively prevent things like SQLi or XSS or remote injection/execution, etc. Because of the complex nature of an operating system this is really endless and requires constant learning. Security is like the environment, no one seems to care until it's gone and your code has been exploited.
Then what about performance. You need to familiarze yourself with the way computers work and their various systems. Are you aware of PHP's little quirks which can lead to better performance, but without sacrificing design or code simplicity?
The Danish Physicist Niels Bohr (sp)? once said: "An expert is someone who has made the mistakes in their given field." or something that effect. Basically, you will never ben an expert because you will never be capable of making all the mistakes in the field of software development, there are simply to many variables. The best you can hope for is to reach a level where you are effective as a developer, receive a reasonable salary and get projects finished.
Cheers
Learning the language PHP itself is easy, it's all the others details like knowing environment, HTTP/FTP, then there is SQL and so on.
After about 5-6 years of doing that, you'll begin to investigate ways of making code better at which point you make a slow transition from a "programmer" to something more of a "designer" or "architect".
When you look at software from a birds eye view, your software suddenly changes from a monolithic mess of spaghetti to a clean, easy to comprehend design split into multiple modules or files.
I'm not sure I would suggest getting into architecture right off the hop. I think you need to spend a few years toiling over 500 line complex functions before:
1) You get a sense of what simple versus complex is
2) You actually appreciate your years of experience and push even harder to simplify your code
Writing simple software is actually very challenging -- but gets easier with experience.
You have to actively prevent things like SQLi or XSS or remote injection/execution, etc. Because of the complex nature of an operating system this is really endless and requires constant learning. Security is like the environment, no one seems to care until it's gone and your code has been exploited.
Then what about performance. You need to familiarze yourself with the way computers work and their various systems. Are you aware of PHP's little quirks which can lead to better performance, but without sacrificing design or code simplicity?
The Danish Physicist Niels Bohr (sp)? once said: "An expert is someone who has made the mistakes in their given field." or something that effect. Basically, you will never ben an expert because you will never be capable of making all the mistakes in the field of software development, there are simply to many variables. The best you can hope for is to reach a level where you are effective as a developer, receive a reasonable salary and get projects finished.
Cheers
Re: How many years to become expert in php
I think its something you can either do or you cant regardless of how hard you try.
Its a state of mind more than anything , the implementation language doesn't make a difference.
Sure it may become easy as you remember functions but you will still struggle if you can't understand the concept of software engineering.
I think most people would understand if this was applied to art, you either can are can't.
Its a state of mind more than anything , the implementation language doesn't make a difference.
Sure it may become easy as you remember functions but you will still struggle if you can't understand the concept of software engineering.
I think most people would understand if this was applied to art, you either can are can't.
Re: How many years to become expert in php
I guess my opinion falls somewhere between the first 2 responders. While I don't really disagree with Hockey, I think the picture he painted is more discouraging than it needs to be. It depends a lot on how you define "expert". You can be effective and even efficient as a PHP programmer, if you study it properly, without spending years and years, although you surely won't be among the top 10% of programmers, probably. And I agree with Chonk that perhaps the greatest factor is how you've been trained to think. If you already program effectively in other languages, you have probably developed the thinking patterns that will enable you to program as well in PHP, in a relatively short time. If all of your experience has been in web design, though, you will need to learn new ways of thinking, and that will take longer. As a retired college instructor, I long ago stopped trying to predict how well students will succeed.
- seodevhead
- Forum Regular
- Posts: 705
- Joined: Sat Oct 08, 2005 8:18 pm
- Location: Windermere, FL
Re: How many years to become expert in php
I was self-taught and started just 3 years ago. While I was learning a lot of other things besides PHP as well (mysql, css, photoshop, illustrator, etc), it wasn't that hard... and this was my first "real" foray into programming.
Now, three years later, I feel like there is nothing I couldn't develop (at least that I would want to make myself). I am not good in OO though... in fact.. I never use it for my own work. I don't think that hurts me per se... but it would hurt me if I had to go find a PHP job in the real world. I've done everything and designed a lot of different things. I couldn't even imagine coding something like SwiftMailer like Chris did however, that's crazy good... and lots of OOP. But take phpBB forums for instance... I'm sure I could write it if I wanted.. it would take a long as crap time.. but I could do it. And I'm a design/CSS guy like you, so I could make it look just as good (actually better
). It wouldn't be good, quality code (and it would be procedural)... but I could do it... I know I could. Of course I'd be asking a bunch of questions in forums along the way probably... but who doesn't? (maybe feyd).
I've learned finding the right learning materials is of upmost importance when it comes to php/mysql. There are soooo many bad books out there and horrible tutorials on the net. I think I did pretty good learning it all fairly quickly. I've always had a good system for learning things... and it's quite different than most people. Get a few books on a topic... books you know are GREAT books on that topic. Then... read them all... pick the book of two or three that you just read that is best... and re-read it two more times. Don't even worry about coding at the computer. Just read and read everyday. Reread it till the 3rd or 4th time reading it, it's almost like you know the next sentence before getting there. I did this and after a couple months of just solid reading... I went to my computer and was able to start coding the exact application I wanted.. using my book as a reference as I went along. I think that's the best way.
Now, three years later, I feel like there is nothing I couldn't develop (at least that I would want to make myself). I am not good in OO though... in fact.. I never use it for my own work. I don't think that hurts me per se... but it would hurt me if I had to go find a PHP job in the real world. I've done everything and designed a lot of different things. I couldn't even imagine coding something like SwiftMailer like Chris did however, that's crazy good... and lots of OOP. But take phpBB forums for instance... I'm sure I could write it if I wanted.. it would take a long as crap time.. but I could do it. And I'm a design/CSS guy like you, so I could make it look just as good (actually better
I've learned finding the right learning materials is of upmost importance when it comes to php/mysql. There are soooo many bad books out there and horrible tutorials on the net. I think I did pretty good learning it all fairly quickly. I've always had a good system for learning things... and it's quite different than most people. Get a few books on a topic... books you know are GREAT books on that topic. Then... read them all... pick the book of two or three that you just read that is best... and re-read it two more times. Don't even worry about coding at the computer. Just read and read everyday. Reread it till the 3rd or 4th time reading it, it's almost like you know the next sentence before getting there. I did this and after a couple months of just solid reading... I went to my computer and was able to start coding the exact application I wanted.. using my book as a reference as I went along. I think that's the best way.
- RobertGonzalez
- Site Administrator
- Posts: 14293
- Joined: Tue Sep 09, 2003 6:04 pm
- Location: Fremont, CA, USA
Re: How many years to become expert in php
It took me three years to go from a complete n00b that had to have the PHPDN forums hold my hand through everything to someone who gets paid to develop applications professionally.
What is you learning curve? I wanted to learn really bad to I applied myself and learned it well in addition to learning C#, some Cold Fusion, XHTML, CSS, JS, Photoshop, Illustrator, MySQL, SQL Server, Sybase and Access in addition to Linux CLI and Apache & MySQL server management.
I am of the mind that anyone can learn anything they have to learn as long as they want to learn it. I was proficient in PHP development after about 18 months. I was damn good at it after about two and half years.
Four and half years into this thing I am now fetching an extraordinary salary as a full time employed PHP dev while at the same time landing between $100 to $125 per hour on freelance work.
What is you learning curve? I wanted to learn really bad to I applied myself and learned it well in addition to learning C#, some Cold Fusion, XHTML, CSS, JS, Photoshop, Illustrator, MySQL, SQL Server, Sybase and Access in addition to Linux CLI and Apache & MySQL server management.
I am of the mind that anyone can learn anything they have to learn as long as they want to learn it. I was proficient in PHP development after about 18 months. I was damn good at it after about two and half years.
Four and half years into this thing I am now fetching an extraordinary salary as a full time employed PHP dev while at the same time landing between $100 to $125 per hour on freelance work.
- Christopher
- Site Administrator
- Posts: 13596
- Joined: Wed Aug 25, 2004 7:54 pm
- Location: New York, NY, US
Re: How many years to become expert in php
This is one of those questions like: How long is a piece of string? 
(#10850)
- John Cartwright
- Site Admin
- Posts: 11470
- Joined: Tue Dec 23, 2003 2:10 am
- Location: Toronto
- Contact:
Re: How many years to become expert in php
How many licks to the center of a lolly pop?
-
alex.barylski
- DevNet Evangelist
- Posts: 6267
- Joined: Tue Dec 21, 2004 5:00 pm
- Location: Winnipeg
Re: How many years to become expert in php
3 but I have a really long tongue.How many licks to the center of a lolly pop?
Re: How many years to become expert in php
I've been writing PHP for 7 years so far and I wouldn't call myself an expert.
Re: How many years to become expert in php
A student once asked his Zen PHP master:
"Teacher, how long until I become a PHP master?"
"Ten years," replied the master.
"And what if I study real hard, day and night?" asked the studen
"Oh, then it would take you twenty years".
"Teacher, how long until I become a PHP master?"
"Ten years," replied the master.
"And what if I study real hard, day and night?" asked the studen
"Oh, then it would take you twenty years".