How to start learning web programming from scratch

It’s always wonderful to read every one of your blog post. Each of them has a great content rich in values. I truly enjoy reading it.

In the most recent post on April 14, 2009, in response to Ms. Jane you wrote:

“From the look of your website, it seems that you are not too competent in web programming. It’s okay, but you must keep in mind that if you want to grow, you must take one of the 2 paths:
- Master web programming yourself
- Outsource web programming and learn how to manage programmers
That is something you need to keep in mind and work on consistently.”

Even though it’s well said, It cannot be well done by a debutant…

Would you please elaborate more in providing free or paid reputable resources that you could recommend to the reader to learn it online? We may have tons of them on line, but to know what’s good or not require not only your take but your expertise.

Also when it comes to outsourcing that web programming job could you recommend some reputable free or paid sites online that are useful for achieving growth or success in web programming?

I’ll answer his question in 2 parts:

1) How to start learning web programming from scratch

For beginners, it can be pretty boring to learn web programming. I believe no one enjoys reading programming books or tutorials.

My way of learning web programming, such as html, is “purposeful learning”. The idea of “purposeful learning” is to set a goal to create a particular website and then simply ‘learn ENOUGH’ to serve that purpose.

It will be more fun if you do so.

For example, if you have not created any website before, you set a goal to create your first content website with an aim to make money from Google Adsense.

With this goal in mind, your next job is to start asking questions.

After all these years, I slowly believe that Google has all the answers, as long as you know how to ask the right question.

Some of the question you may start asking may include:

- step by step website building guide
- how to build a content website
- html tutorial for beginners

As you start learning and building your first website bit by bit, your question will become more specific and technical. Soon, you will be asking more technical question such as:

- how to add an opt-in form
- how to create dynamic navigation
- how to add a hyperlink

“Purposeful learning” can be fun, challenging and addictive! The more you know, the more you realize that you don’t know. The more you learn, the more you need to learn.

Besides googling for an answer, if your question is too specific, you may also get help from other programmers. One website where I frequently post question to is stackoverflow.com.

2) Where to outsource web programming

There are several freelancing websites where you can engage programmers to work for you. Some of them are guru.com, elance.com, scriptlance.com and getafreelancer.com (my preferred site, no particular reason, just get used to it).

Engaging web programmers is easy, so long as you have money. The tough part is in managing them.

That’s why I said you need to learn how to manage programmers.

Most freelance programmers are “GIGA” programmers. GIGA stands for Garbage In Garbage Out.

What I mean is if you are not specific in the result that you expect to see, you’ll end up getting garbage from them.

Many marketers are disappointed by freelance programmers because these marketers have a vague idea of the final product that they want and they expect the programmers to think for them and magically create something that they desire.

Here are some tips you can use to better manage freelance programmers:

- Learn programming yourself!

This is how you can speak their language and communicate your needs effectively. You may ask “why outsource when you already know how to do it?” My answer is “because you can use your time to do other more profitable tasks or tasks that cannot be easily outsourced.”

- Use existing website as an example and for comparison

You can say “I would like to create the same effect as blar blar blar website, except that ….”

- Be specific and avoid creative work

Remember, don’t expect magic. Your instruction to programmers should be as specific as possible. You should leave as little room as possible for their creativity. Most programmers are poor marketers. If you give them too much room for creativity, your end product may not be marketable.

- Frequently ask for progress report

Programmers like to show you the product ONLY when it’s completed. It’s dangerous because they may misunderstand your requirement. In order to save everyone’s time, do your best to pester your programmer to show you any thing he has completed so far. This is especially important for big projects.

Share your thoughts

Hi Kenneth.
This topic really hit home with me and brought back fascinating memories of myself 6 years ago.

I joined a web hosting company, not even knowing what a web host was. LOL

The next month after many frustrating attempts to build a website using one of those free WYSIWYG Web Design Programs, I pretty much gave up until I got Page Tutor from the newbie club and proceeded to learn HTML from scratch. Quite by accident I discovered an easier method to create websites with CSS from Stu Nichols. It was a 3 month learning curve to put everything together.

Now, 6 years later I work as a web designer and teacher for my web hosting company. I’ve written an ebook tutorial and have a huge tutorial about HTML, CSS, PHP and basic web design.

All you have to do is start learning. That’s what I did, and I’m extremely happy with my new career.

I started out in the online business thinking I’d have to keep my laptop up and running so people could access my website (which I had no idea how to build). LOL After scrambling in the dark for a couple of months I learned that I needed to know a heck of a lot more than finding hosting and learning html!

Luckily for me I found SiteBuildIt. Included in a 12 month subscription comes hosting, a web builder, awesome keyword tools, autoresponder, blogging and much more including a step by step training guide. I think I probably would have given up in pure frustration had I not come across them.

Thank you Kenneth for another great post. I appreciate the hints and tricks you share.
If at all possible, it would best to learn basic web design before outsourcing even if it is just to have the knowledge to discuss your design in an intelligent manner.

I got myself into Internet Marketing hype about 6 months ago. Joined and tested out many affiliate programs but no success up to date. Well, I’m more fascinated into website building. It’s very challenging and there’re so much to learn. It’s really nice to see your own creation (websites) on the internet…..savouring all the hardwork that you’ve put up. ;-)

OK for the past 10 days I have been trying to figure out where to begin learning website development a dynamic one, So far everyone told me you should start with computer science and I am like What the f*** how am I suppose to learn computer science without going to school and get a degree but I don’t want a degree I just want to learn how to develop websites. So now I am here and confused about how to put together a website. I get HTML and CSS but still have some problems designing the site now on the other had I am having trouble trying to figure out how php and database mysql is used to put together a website. I have seen videos from lynda.com and still have no Idea after I have watched the video the basic one, one that teach you the Variables, Loops, Strings ext… ok than what happens, how do you build the website with it, that is the question I am real not understand the answer to.

I learned web programming from scratch when all there was WAS scratch. In 1995 I started programming (if you can call it that) in HTML 1.0 – this was months before I had an email address (and about a year before I knew anyone else with one who I could email) – by hand and from scratch was the only way to do it back then and though it was a bear, I’m grateful for the experience. There was no O’Reilly book to teach you back then (or at least not one I had) so I learned from the ground up how the web itself worked. As I went on and on in the industry more and more people jumped on board as the internet got ‘hot’ and they only made my job harder. You see, the more people who knew nothing about the basics made life hell for those of us who actually knew what we were talking about. Now I think we’ve reached a equilibrium, where those who ‘don’t know’ at least know enough to keep their mouths shut and listen to those who do, but it’s still a tenuous peace. The more of us who actually take the time to learn the basics the better for the industry as a whole. IMHO.

Cliff’s Notes from Jim’s comments” “I am awesome and very adept at web design/programming. I learned before everybody else. I am awesome. Everybody else shut up because I know everything!” Care to contribute something Jim, rather than chastise and sound arrogant and condescending?