Home Page

Welcome to Practical Computing

Welcome to my site that I call Practical Computing. This is a site that I have put together in the hopes that someone might be able to learn from some of the things that I learned about web programming over the years. So, if you want to learn about creating web pages that are made dynamic using JavaScript, this site is for you. I like taking a very fundamental approach where you start by building web pages from scratch. There are several JavaScript libraries and frameworks that are commonly used for creating web pages, like React, Angular, Vue and Svelte to name a few. My belief is that learning the basics with plain vanilla JavaScript will provide a foundation that will allow you to use any of those libraries and/or frameworks.

In my experience, a lot of people start off using tools like React or Angular before learning much JavaScript. For many of those people, they wind up only being able to create web pages that are like the examples they have been exposed to. Once they want to do something that is different from those examples, they can experience difficulty in making progress. Those people often have difficulty debugging their code, because they don’t really understand what is going on at a low enough level. Of course, some of those people become quite adept at looking up solutions to their programming problems. But, even for those people, they may run into issues if the library or framework they have spent their time on becomes less popular. Switching from a library like React to a framework like Angular or vice versa can be hard, because the approaches to those tools is quite different. On the other hand, someone who has decent plain JavaScript knowledge, will probably be able to make shifts like this more easily.

I think that a practical way to learn a programming language is to start off by doing things with that language. In that way, you can see what some feature of that programming language is useful for, without getting bogged down in too much theory. This is why I think JavaScript is a very good language to try to learn. A programming languages like Java requires that you learn a fair amount before you create programs that are useful. This is not a knock on Java, but you typically would not create a GUI (Graphical User Interface) program using Java Swing classes as one of your first programs. On the other hand, since JavaScript allows you to manipulate web page content, your first programs involving JavaScript will be already involve using a GUI. There is a reason why the World Wide Web is so popular. The average person finds it much easier to interact with a GUI type program. So, most companies have a Web presence. This makes JavaScript a practical language to learn as well.

So, learning JavaScript is practical because it is a programming language that lends itself perfectly to creating GUI type programs, and this is a skill that will be useful for anyone that works in a company that utilizes web pages.

Navigating this site

There are two levels of navigation for this site. In the left sidebar, you will find links for a given module. Those links are used to navigate anywhere within that module. On the very bottom of the left sidebar is something called a drawer. This is the place where you can switch between different modules. Shown below is a partial screen shot showing the Beginner Module:

beginner module view

For the Beginner Module, you will see links on the left sidebar for Guides and Lessons. Guides are instructions on how to set something up on the computer. Lessons are the actual lessons that go through various topics on web programming. The Intermediate Module will have Guides and Lessons also.

If you are new to programming or new to JavaScript programming, you probably want to start with the Beginner Module. If you are already familiar with programming, you could start with the Intermediate Module. The Beginner Module is a work in progress, so there will be added lessons as time goes on.