|A Web Developer Needs So Many Skills. How Can They Be Learned?|
It's too much...
Time and patience... and WebmasterWorld.
All obstacles can be overcome. I have been frequenting these boards for nearly 7 years now. I can not begin to say how much I have learned, nor how much assistance I have receieved. This place has provided 10's of thousands of dollars of education, and probably several times that in direct assistance and "free" consultation from world class practitioners of the trade.
Keep at it. Soon you won't even know what you know!
It goes by quick...especially when there's money making involved.
Reading online and offline (for me, some times there is no substitute for a book in your hand) and a lot of trial and error goes a long way in my opinion.
Don't try and learn everything at once, but be willing to put the time in to learn new things when they come up. if you don't need to know how to administer DNS right now don't, you will learn it just as easily (if not more so) when you need it!
I imagine you will know a small number of languages/environments because you use them daily, but for the rest you just need to remember where to look for help. Keep your bookmarks organised and sharpen your Google query skills.
I have a word document that goes with me from job to job. In this doc I have, for example, the first 10 lines of CSS which is always the same on every site I work on. I have browser quirk work arounds, bugs that baffle and how to fix them, plus various other tips, scripts and tricks.
As I come across anything where I say "whoa, never knew that" it's a copy/paste into this doc. Now for the weird bit; half the time I can't remember how to fix a bug but I always know the bug is in the doc and where it is. I have no idea why I can only ever remember the doc but it has saved me (and the companies I work for) countless hours.
You mentioned MX records... I too have no need to know this apart from once or twice a year but each time I use them I copy/paste what I did so I can refer to it again when I need to. My brain seems to bulge and seep with all the information I've learnt over the last eleven years but this doc (which is now 6 six old and updated as needed) has saved my bacon many times over.
What I find challenging is knowing what tools are available to me and how to use these tools together. For example, if the only tool I know of is the hammer, I will pound with it every problem I come across. On the other hand, if someone told me, "look, here's your toolbox. The screwdriver does this; the saw does that, the wrench does the other thing." Then, at least I'd know what's available to me and only learn how to use it when I need to use it.
But not knowing what tools are available, I'm afraid I might be struggling to solve a problem with a tool that's not right for it, and therefore the problem might seem more difficult than it should.
Wouldn't it be great if there was, like, a huge reference book that has everything a Web developer might need. Then you could skim through that book, see how Web developers set things up and learn what tools are available. Then, you can learn how to use the tools as the need comes up.
Surely that's what Google's for, when you come across a problem, Google it, you will get 10 different ways to solve the problem and can either follow someone elses instructions, or pick elements from what other people have done.
Not so much for web stuff, but I have a big ref book like you suggest for another topic, it has 2 major issues, the first is that I still don't know what's in it, and still only learn there is an alternative way of doing something when someone else discusses it on an online forum, and the second is that it generally only describes one way of doing something, the way the author [refers, this isn't always the way I will find easiest or best, and so I still have to go to half a dozen other sources to find the solution.
You have one advantage over us; the answers are out there. I remember when I started using CSS there were no books, hardly any online references and a whole ton of problems to sort out with IE4,5,5.5 and 6.
At least now it's only IE6 that causes people the most problems.
|brotherhood of LAN|
|Surely that's what Google's for, when you come across a problem, Google it |
Yep, I've found over time that any problem I've had has probably been encountered by someone else.
Knowing how to find information is an essential tool to have.
I had a reputation as a guru for a particular suite of mainframe applications about 20 years ago. I didn't have any special knowledge but I knew how to find the answers in the manual quicker than anybody else.
As others have already said, its knowing how to find the information that is the big skill.
You can read all you want online and in books - but you wont get anywhere with out practice (trial and error).
I first started by trawling the net and finding a site I liked. I would download the whole site using a certain piece of software and then reverse engineer it until I had figured out how they did it.
Just when I was happy I knew pretty much everything about table-based design (this was the 90's) along came CSS and the learning curve started all over again :-)
There is a lot to learn. I'm still learning. I've been in college for 3 years, received my associate degree in web design with an emphasis on graphic design so far. I currently am quite good with xhtml, css, Photoshop, and Illustrator. I'm in the process of learning php and mySql as we speak. So far, 3 weeks into the class it's been a blast. I can't wait to actually get into the meat of things once I'm more familiar with the syntax.
Taking the advice in this thread, I came up with a few useful tools to help me along the way:
1. I read a book called "PHP 6 and MySQL 5: Visual QuickPro Guide (3 ed.)." It's very non-techy friendly and the author doesn't go into lab-scientist details. He keeps it practical, applicable and real. I recommend this book. After getting a grip on PHP, I should also start reading other books on other topics.
2. I created a Firefox keyword search [mozilla.org] for PHP manual - http://www.php.net/results.php?q=%s&p=manual&l=en [php.net] (%s is your search keyword). With this trick, whenever I get stuck on a PHP function or constant/variable, I just type "php [keyword]", and it is usually the first result in the PHP manual. I did similar tricks for MySQL and other stuff.
3. I hang around chat channels at irc.freenode.net. There are channels for #php, #html, #css, #mysql, #wordpress, and more. In these channels, if you have a problem that you want to discuss with technical people, you ask and get answers instantly! It's a great resource.
4. Then of course practice by playing around with scripts and whatever you can get your hands on.
A couple of weeks/months of this and a person can officially qualify as a Webmaster / Web developer.
[edited by: brotherhood_of_LAN at 1:32 pm (utc) on Feb. 6, 2009]
[edit reason] removed trailing quote from link [/edit]
when you have a problem at work you must solve in two days - it suddenly happens that everything can be found and learned in a very short time...
thanks for tools, msafi!