Link to home
Start Free TrialLog in
Avatar of APD Toronto
APD TorontoFlag for Canada

asked on

Skill Development

Hi Experts,

I have a college diploma from 2001,  trained in Classic VB6/VBS/VBA/ASP. However as I knew  that my skills were getting outdated, I took a few onllne courses that were based on the following texts :

https://www.murach.com/shop/html-css3-detail - all chapters

https://www.amazon.com/MySQL-Second-Larry-Ullman/dp/0321375734/ref=sr_1_1?s=books&ie=UTF8&qid=1459107004&sr=1-1&keywords=9780321375735 chapters 1-7, 10-13

https://www.murach.com/shop/murach-s-php-and-mysql-detail - all chapters

https://www.murach.com/shop/murach-s-javascript-and-dom-scripting-detail, chapters 1-12

I have spent close to one year in covering this, and feel 90% confident in the material covered, following it I successfully wrote a 18-month Database application using these skills, that is used today for minute-to-minute operations.  

However, now as I am on the hunt, I'm running into so many things that I lack, like Bootstrap, JQuery, WordPress, Frameworks, all of which I know of,  but some I don't like SAS/LESS.

The following are list of skills which I've compiled and grouped by category that I've noticed that I lack as a web developer.  Those with * are what I assume are a quick study?

PHP/MySQL

•      Lavarel
•      CodeIgniter
•      CakePHP
•      Zend
•      Yii
•      Symphony
•      SMARTY Template

I know that there are much more frameworks, but these are the most popular.

•      WordPress
•      XDebug *
•      GIIT *
•      Agile & Scrum
•      OOP: While I know what it is, I never got a firm grasp.
•      LAMP & AWS: Is basic knowledge important?

HTML/CSS

•      Bootstrap
•      SASS/LESS

JavaScript

•      JQuery - very crucial
•      Node
•      React
•      Angular
•      Backbone

AJAX
•      Basic AJAX
•      RESTful
•      SOAP

Given my list above, I'm seeking advise on how to go about to learn these? Local colleges do not offer these exactly, and I know that online there are millions of sites on each, but I'm the typ of person who enjoys a structured plan/course, that's why I'm also on the fence about lynda.com - no texts to refer, no one to answer questions (except EE :))

I also wondered about APP Development like iOS and Android, but I believe the above are most crucial.  I would not be surprised if there are one or two courses that would cover this as well.

Any direction will be appreciated.
SOLUTION
Avatar of Prasadh Baapaat
Prasadh Baapaat
Flag of India image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
One obvious answer: Learn how to find your way around Stack Overflow.  In the Washington, DC professional community we laughingly joke about this.  But it's true, and we have all done it at one time or another.

User generated image
In a more serious vein, I've taught many of these technologies at the post-graduate level, and studied a fair number myself.  As time permits over the next few hours, I'll try to put together my list of learning resources and post it here.  Some technologies (like some animals) are "more equal than others" and very much worth learning.  In those, I would recommend investing the time to make some example libraries of your own, showing the basics of simple tasks.  Others (I'm looking at you, SOAP) are dead to the 21st century and not worth your time.

Object-oriented programming is more about application design than any discreet language syntax.  If you understand variable scope, interface design, and encapsulation of related code and data, you've got a lot of the meat.  But don't short-change this topic.  It's the biggest advance in programming since the advent of compilers and high-level languages.

Finally, I'm on the threshold of retirement.  But if I were starting a course of study today I would place great emphasis on mobile development.  Mobile internet traffic passed desktop internet traffic in 2012, and the curve is only going in one direction.  The desktop is dead.  You might want to add the Internet of Things to your fields of interest!
SOLUTION
Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
SOLUTION
Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
ASKER CERTIFIED SOLUTION
Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
SOLUTION
Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Avatar of APD Toronto

ASKER

Even though I studied Microsoft, I prefer PHP because it easier to get work. Microsoft is more corporate and I prefer small to medium. However, a lot of PHP ads also look for front-end li JS and jQuery.

Actually, I prefer self-employment also, and my main source of clients come from Craigslist, but again there is a lot of mix between PHP, JQuery and WordPress. If you were to limit my list, what would you focus on?

This is an example of a post, which was from home, got the interview, but did not have the skills matching my post.
http://ca.indeed.com/cmp/Tutor-Doctor/jobs/Senior-Contract-PHP-Developer-abfe560fcc515465?q=tutor+doctor+php
SOLUTION
Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Here is what would be my list, in order:

Git.  Does not matter whether it's GitHub, Bitbucket, Gitlab.  The repo is your friend, and is necessary for any sort of collaboration.

HTML5.  Learn why CSS Zen Garden works, and why semantic markup matters.

CSS.  Learn why CSS Zen Garden works, and why semantic markup matters.

JavaScript.  Because every computer, iPad, iPhone, etc., with a browser runs JavaScript.  jQuery is kind of a decade-old spaghetti-code thing, but it's worth knowing.  If you understand JavaScript, you will understand jQuery very readily.

Object-Oriented Design.  Interview questions often go there.

PHP and MySQL for all kinds of sites.

Drupal for big sites.

WordPress for small sites.

Laravel and/or Ruby-on-Rails for innovative sites.
What do guys think of the following courses. I know that they don't cover everything, but mostly JS and RWD.
 As well WordPress Integration they teach how to use JS and CSS. Is this enough when they say WP Developer, or do you also need to know how to change WP with PHP?
GBC-COMP-9567-WordPress-for-Bloggin.docx
GBC-COMP-9632-Responsive-Web-Design-.doc
GBC-COMP-9633-JavaScript-Programming.doc
GBC-COMP-9634-Building-Interactive-.docx
GBC-COMP-9635-Mapping---Social-Media.doc
GBC-COMP-9676-WordPress-Integration-.doc
All of these look useful.  I looked at a couple of them more carefully than others.

Assuming a good foundation, the JavaScript and Interactive course outlines looks pretty good.  I don't own the text they chose, and would urge you to read Flanagan and Crockford, too.  Flanagan, in particular, is an excellent reference book.

Responsive Web Design is sometimes euphemism for "I have an old web site and I don't want to pay a professional to refactor it to modern standards, but nobody comes to it any more because they all use iPhones now, so how do I make my HTML tables smaller to fit on iPhones, etc..."  A more up-to-date thought paradigm is "mobile-first" design.  Desktop computers are an afterthought in the world of ecommerce..  There is nothing wrong with the course outline, it's just got the code smell of legacy remediation when refactoring might be a better approach.  Saying "responsive" sounds a little like saying "html" -- it should go without saying!

... how to change WP with PHP?
That's worth learning, but WP has a huge community with well-vetted component libraries of themes and plugins.  Go there first, before you start writing code.  #Protip: Don't use unpopular themes or plugins.  You will make lame brown sadness software if you choose bad add-ons for any framework.

WP has an API, but there is a much better (easier) approach shown here.  And if you're going to publish your WP PHP code, you will want to follow the WP PHP coding standards.

Depending on your intended audience, this might be worth a look, too.
https://www.shopify.com/
WordPress isn't what you think it is. It's capable of much more than you can imagine.
I'm in the process of building a web app in WordPress. I start from Underscores Starter Theme.
Eventually, I end up adding 50% more template files to the theme depending on my need for Custom Post Types, Custom Taxonomies, Different Page/Post Type Layout Templates, Custom fields (Piklist or ACF), Customizing plugins like Event Organiser, Woocommerce, Formidable Pro.

My most ambitious project has been a multi-day, multi-venue festival with 7 types of participants. I used Formidable Pro for the submission forms and upon submit, the participant profile was created in backend on WordPress, ready for publishing. But, I had to create distinct template files to accommodate the different layouts for the profiles. We also used Zapier to zap the info to Podio for curation purposes. Suffice it to say, that site is complete custom work. There is NO WAY a pre-built theme and some plugins was going to do what I wanted.

At this point, WordPress is like clay in my hands. You'd be amazed how you can stretch it without limitation!

Where are you located? You might want to check out a WordCamp. There you can hobnob with WordPress Developers who can steer you in the right direction!
This is a Good example of PHP Developer in my area.
http://toronto.craigslist.ca/tor/sof/5704832586.html 

As you can see it also includes JS, jQuery, CSS, HTML and much much more....
If you are going to be paddling in the Web Development pool then it is important to understand that HTML / CSS / JavaScript is going to be the common end point of whatever development stack you choose. The server side code - if that is the paradigm you use - generates HTML / CSS / JavaScript output which is sent to the browser.
Therefore it is imperative that you are well versed in these three technologies. In some cases the framework you are developing with will handle some of the nitty gritty for you - but if you rely on that to plug the gaps of not understanding the resulting output you will experience difficulties. What I see a lot is developers who do not have a good handle on the 3 browser technologies and they fall back on plugins to fill the gaps - which inevitably leads to application bloat. Developers include monster plugin libraries to do things that can be accomplished with far less code and with less chance of a conflict - resulting less stable applications and ones that take longer to load.

Bottom line - make sure you are up to speed with HTML / JS / CSS - and you can include JQuery and Bootstrap on top of that because you are going to be hard pressed to do any kind of web dev and not run into those as well.
Thank you all.