Hi guys, I'm finally getting back into Design & Development after a 5 years hiatus, I was never a professional or anything like that. Truth be told, I only knew Flash and Photoshop, with occasional motion graphics using After Effects. All I would do was interfaces with Photoshop and then import and animate them in the flash environment, every coding, scripting was through Actionscript. I would then just lump it into a html file. Most of my sites were static, it was all just amatuer student works, I knew I was a designer and I never thought of stepping into the developer's field however much these 2 paths tend to cross.
But now, I checked out things like Wordpress, Joomla, Drupal, Magento, Prestashop... etc. and I've gotten confused. What are these things? Are they essential? Basically, my question is, do I really need to know how to develop on these platforms? Is the age of coding everything from scratch and re-using your own codes for similiar projects over? I feel like I will be lagging behind as my original codes won't be up to par with these big boys, if say a client asks me to make an e-commerce site. Compared to these big boys, my little inflexible-but-specialized hand coded back-end would be less appealing.
From what I see it seems that people are just using this engines and creating templates and modifying it. So much in a way that you actually have to study and learn how these engines work, which leaves someone like me totally noob-ed out. Would I be able to do fine without ever touching on these platforms in this time and age?
Sorry for being oblivious.
First things first, welcome back to the world of Web Design/Development.
As sad as this may sound to you, this is great progress for web professionals (and for those in the .NET world five years in the past :)).
The kind of things you are mentioning are Content Management Systems (CMS) and eCommerce solutions. The PHP world has finally decided to join the big boys by making a CMS a necessary requirement for websites.
As you'll be well-aware code reuse is very important in development, as is ease of use. What CMS systems, eCommerce solutions and web frameworks now offer us is the ability to build easy-to-use websites that users have full-power over on a standard framework, with pre-built, extensible tools to allow us the best ways to do the easiest things, and enough power to help when we're working on something complicated.
To explain it better, why write your own backend when a CMS like Umbraco for ASP.NET or Drupal for PHP exists? We could rewrite the same old code day after day, or rely on tools that have had several thousand man-hours spent on them to make them commercial-quality. I know what I would rather do.
In my experience a lot of people fake it until they make it. I have no knowledge of Drupal, but I was able to build a website for work. I am not hugely skilled in WordPress, but I was able to build a blog and modify some plugins for a client. I'm not that great at Sitecore, but I am working on a large industry-leading website.
The best thing you can do is to install a couple of these solutions on your own machine and tinker with them. The point I was trying to make is that they're largely not that difficult to use, and given some experience you'll be as good as anyone else with these applications.