0. Learn Computer Programming

Learn Computer Programming, HOWTO, a Tutorial

My name is John, and I've been a computer programmer for about 30 years. As a retirement hobby I've put together these pages on how you too can "make big bucks, meet lots of women!" Actually, that joke is as old as I am. In my experience the bucks part can work out. If you want to meet lots of women, you might pursue a career as a Yoga instructor.

I guess you could do both. You probably should. After all, programmers spend too much time in chairs and in front of screens.

Regardless, I hope to give you one path through to learn computer programming. I know there are others out there, and I encourage you to flit around the webs finding what works best for you. It may be that one resouce or tutorial is over your head now, but it may work when you come back to it in a day or a week. That's fine. Just be relaxed and happy as you add a little bit to your knowledge base each day.

Even after all the years I've been doing it, learning a new field can be daunting, but it's like eating an elephant ... one bite at a time.

There are many guesses about how long it should all take. I'd say you can be writing simple web programs in a few weeks, be turning out solid work in about a year, and be an expert in a few more. That's assuming you really get into it.

One (Possible) Path

I'm going to suggest a Linux-based and web-based path for learning. I'll be using the LAMP architecture. It is widely used, powerful, and has a low cost of entry.

We are going to bootstrap (explanation), going from the simple to the complex. There is a natural benefit to this method. As we climb the LAMP "stack" we'll get a pretty full tour of web programming tools and methods. Many pieces will have application outside the "stack" and in other domains.

If you are a Windows-centered user and plan to be a Windows-centered programmer then you might use someone else's roadmap. Of course even then this path might be good for perspective. The more operating systems and languages we have used as programmers, the deeper our understaning of the process.

If you are a Mac-centered user and plan to be a Mac-centered programmer, you can rest assured that the Linux and Mac family share a lot of common features under the hood. What you learn here can be applied there, usually with some small variation. The top level, the GUI Mac programs, will have a different framework but in a real sense they build on the same base.

NOTE: If you are the journaling kind, or even if not, it wouldn't hurt to grab a pad for your notes as you begin ...


  1. This is more of an introduction to systems administration, database administration, and web development with scripting languages. I wouldn't call any of this Computer Programming.

  2. I don't believe one can be a well-rounded programmer without grounding in systems operation and systems management. That's been true for 30 years.

    Today one cannot be an effective programmer without grounding in web development and database programming. Certainly all high-value platforms deliver database content, sooner or later, to the web.

    And so a stack that touches all those, and uses PHP as a initial programming language, serves as a tour of modern programming.

    I mean, you can go off into obscure comp-sci languages, with little or no market share, but you when you talk to someone who needs work done ... you'll have little to offer them.

  3. This is such a unique outline to approach learning to program, and has really grabbed my attention. I think I might just do this! : ) Thanks