The first thing I ever learned how to do on computers was to type commands. My best friend’s computer was set up to only run windows if he typed “win” (that was common back then), so starting up the computer would result in a black MS-DOS 6 prompt. I remember him teaching me how to type in the commands to play Wolfenstein 3D on DOS. This could even be considered programming since all DOS commands can be scripted as batch commands. I later learned batch programming from an obscure VHS (not “Video Professor”), QBASIC from my friend’s uncle (a software engineer from IBM).

I mastered graphics in QBASIC graphics by reading Absolute Beginner’s Guide to QBasic by Greg Perry. Coding helped me understand why computers were designed in certain ways. Certain things are difficult or buggy because programmers take shortcuts or do not complete some part of the program. Unfortunately, this happens even in commercial software (software that costs money). However, “seeing the matrix” (seeing or even just imagining the source code) helps you work around the issues and potentially even fix programs. I have used my programming knowledge to help users do one or the other in Windows, Microsoft Office, and other programs. My friend went on to fix several bugs in World of Warcraft’s user interface (the UI is programmed in Lua, a scripting language, so the source code can be found in the program’s files), and send them to Blizzard. He is now very successful in the software development profession.

Even with such a head start, becoming a computer professional required literal blood, sweat, and tears. Often people who see software development as a shortcut to make money don’t understand that it is somewhat easy to learn but difficult to master (knowing how doesn’t mean knowing how to do it well–read about design patterns). However, coding is a way to be a part of the digital world that is being created and reinvented every day. You can contribute to Free Software (public-licensed software, as opposed to just open-source or just no-cost), which can be used by or replace popular programs and web services. Developing with a team, including as a contributor to Free Software, can also help you develop the team and programming skills that are part of mastering software development for a career.

Video Professor by John Scherer is still by far the best tutorial on Windows, but unfortunately it is outdated. The obscure DOS tutorial VHS is also the best explanation of batch programming I’ve seen and is still applicable to the Windows 10 command prompt. Each year after Windows 3.1x, the manual for Windows got shorter. Many years later, there is a serious lack of tutorials, so most users I see are either overconfident or afraid to do anything outside of their routine. Both types of users are susceptible to unsolicited tech support scams. Perhaps the fact that Microsoft has said they will not make another version of Windows (but will rather just keep updating Windows 10 as a rolling release) will revive the tutorial industry, resulting in more computer competence (people with skills necessary to stay safe, and confidence to use and explore computers beyond just daily communication and office tasks). Office 365 as a rolling release product hopefully indicates that the Microsoft Office interface won’t keep being changed drastically. John Scherer’s product quality (in the “Video Professor” series), hard-work, and business savvy made him very successful. Maybe someone can recapture that success using a business model that applies to modern video courses, now that tutorials (in rather stabilized technologies such as Windows, JavaScript, Adobe Suite, and to some extent Microsoft Office) can be relevant for a longer duration.

“‘You’ve got to eat, sleep, drink, live, and breathe your work all day long, even on the weekends, and realize that you’re not going to be spending any time at the beach until you’re successful.'”
-John Scherer https://motherboard.vice.com/en_us/article/d7y5mq/video-professor