So you want to be a PHP Developer?
dannynunez.com
dannynunez.com
Today the most important thing is Composer, not frameworks, especially to those who are just starting out. Learning a full framework is pointless if they just want to see the basics in action. Fabien Potencier's Create your own framework series [2] is really good for this: it shows how much you can do with just a couple of Symfony components and a front controller.
[1]: http://www.phptherightway.com/
[2]: http://fabien.potencier.org/article/53/create-your-own-frame...
It really is surpising how far you can get with a little effort now in PHP, and how much suffering you can avoid by just letting go (of what, admittedly, makes the language fun for some - it's raw, ugly, stupid simple quick-and-dirty hackability) and embracing structure. And open source code.
But yeah... ha-ha. :)
Low Learning Curve Cons:
Oversaturated Job Market
I will be the first to admit that Drupal does not have a low learning curve. (And you can blame me for some of that. Or a lot of that if you wish :P)
But oversaturated job market?? There has been a shortage of good developers ever since there was such a thing as Drupal-developer-as-a-job, at least a decade.
I love Drupal, despite some of the flack it gets, I think on the whole it does what it does really well. But easy to get into "it aint".
After you have 3 to 5 years experience, try to emigrate to United States, Canada, News Zealand or a couple of good European countries. Germany, The Netherlands and Sweden off the top of my head. In the mean time, try to learn French or Spanish beside improving your English. It will give you much better advantages when you speak different languages.
But then again, this is my personal advise. If you firmly decided to continue studying aboard, don't let a random stranger on internet change your mind. Good luck to you anyway!
Regarding CMS work, I have personally found that Magento is one of the best things to specialise in. Ecommerce is a huge market.
Conversely, it is a bad choice because it teaches you bad practices and you will be forced to implement so many hacks on any reasonable sized project. Just don't use it.
Switching from CI to something better later is really not that hard and it's much, much easier that learning one of the modern frameworks from scratch.
I'm talking about self-taught begginers without CS degree or working-in-a-large-team experience.
> The best tip is: go get a computer science degree. The more computer science you have, the better. You don't have to have a CS degree, but it helps. It doesn't have to be an advanced degree, but that helps too.
My own take on it is that most programming languages are like cars and the skill of driving computer science: if you can drive one car, you can learn to drive the other and with programming if you can program in one language you can probably program in the other. Knowing the fundamentals about computers, how information is represented as bits, how they store and process information, how they communicate over networks, how you can use them to solve problems like sorting, cache invalidation, etc is really important stuff that is orthogonal to learning a programming language. Personally if I am using programming language X at my job, and you have 0 experience with it, but are a good programmer, I may not give a shit and hire you anyways.
[1] http://steve-yegge.blogspot.de/2008/03/get-that-job-at-googl...
>Unicorn Skills That will be required – (Some how through magic)
In the "Unicorn skills" section, you're as likely to need cPanel or Plesk as pure Linux skills (although having the latter will make the former much easier). I would also say you'll probably be using SVN and not git. Lastly, add FTP and SSH to the skills you'll need.
According to http://www.itjobswatch.co.uk/jobs/uk/php.do these are the number of PHP jobs asking for Git and Subversion respectively in the UK in the past six months:
Git: 2244 jobs Subversion: 1559 jobs
So no, you're actually more likely to be asked for Git than SVN.
I had a look at the Zend certification link, and I know most of things on the list. It was surprising, because I wouldn't classify myself as a "dev" or anything even close to it. I learnt (and use) PHP via the "hack and see" method.
Features: The "You will just have to try it yourself."-Button is not doing anything.
Sign Up Link: Uncaught TypeError: Cannot read property 'login' of undefined features:1
Would you call someone a ruby elitist because they embraced best practices and disliked/hated a project that refuses to embrace best practices and encourages bad practices?