I had a chat with some friends last weekend about how people get into web programming. They were hardly newbies but probably had 3 or 4 industry years under their belts.
Having worked in the web industry for over 20 years I’ve accumulated a ton of knowledge along the way. I said I thought it must be hard for newbies to get into web programming.
Their response was that there were more facilities available now – e.g. coding courses are online and that I had had to learn from a book.
This was partly true. I had learned some stuff from books. However, there were other tools about in my time such as IRC and, believe it or not, websites! The whole web thing was being invented as I got into programming.
However, this doesn’t answer the problem.
It’s not just about learning to program. The issue is you’re going to run into a ton of issues en route. For example, say you develop on a Mac. Here are a very few issues you’ll encounter:
- setting up your web development environment (e.g. Unix file permissions, Apache conf files, error logs, mod_rewrite, .htaccess files)
- problems upgrading software – e.g. look at the thousands of questions and posts about this simple MySQL problem – https://www.google.com/webhp?sourceid=chrome-instant&ion=1&espv=2&ie=UTF-8#q=RROR+1045+(28000)%3A+Access+denied+for+user+’root’%40’localhost’+(using+password%3A+YES)
- using all the tools you’ll encounter – e.g. vi
- managing your environment – e.g. killing a process with -9
It’s just one reason why StackOverflow is so wildly successful.
But I don’t think StackOverflow necessarily answers questions with any depth. It promotes copy and paste fixes with little to no understanding. Not to say I don’t use SO or Google’ing – I do.
But it takes a lot of time to develop the filters that help you realize which answers are useful and which aren’t – there’s an awful amount of rubbish out there!
I would add ‘understanding package managers’ to that list. Brew, apt, composer etc. When it comes to file permissions, I have seen many junior devs just chmod 777 everything when they are in a tight spot, so I always encourage them to do it correctly even if it takes a bit longer, because it gets easier the more you do it.
O and don’t blindly copy and paste code from the Internet. Not everyone with code snippets on the web is a good developer!
Yes, great points!
brew is so, so useful. As is composer.