If you really know one programming language, you can learn others too. The most important part is to understand the concept of computer programming. All languages are built on similar type of instructions, some of them require a semicolon at the end of the line, others don’t. Some of them use curly braces {} to group instructions, others use indentation.
All of them allow you to make decisions, usually with the keyword IF, assign values to variables with =, read the keyboard, write to the screen, read and write the disk, and the network. Loop through items with FOR, FOREACH, and WHILE, address array elements with [0..]. You only have to learn a few English words and the syntax to use them.
The internet, and especially Stack Overflow is a great resource to find sample code that does what you need. Avoid assembling your program by copy pasting code from the internet. Try to understand the examples, and write your own lines to be able to really understand and maintain it.
The list below shows the advancement of personal computer technology. I have added the usual hardware specifications, the most popular operating systems, and important programming languages. The dates are not when the technology was announced, but when the average user started to use it.
1981
IBM Mainframe, magnetic tape and large format magnetic disk storage
- Fortran
Homemade personal computer with no permanent storage
- Basic
“Midrange” computer (16 KB solid state or magnetic-core RAM, large format magnetic disk storage )
- Basic
1984
ZX 81 (3.25 MHz processor, first 1 KB, later 16 KB RAM, compact audio cassette storage)
ZX Spectrum (3.5 MHz processor, 16 KB RAM, compact audio cassette storage)
Commodore 64 (1 MHz processor, 64 KB RAM, 5.4″ floppy disk)
- Basic for data processing
- Simon Basic for graphical user interface
IBM PC( 4.7 MHz processor, first 128 KB, later 256 KB RAM, 5.4″ floppy disk, later 10 or 20 MB 5.4″ hard drive)
DOS
- dBase
- Clipper
- FoxPro
1987
IBM XT ( 4.7-12 MHz processor, 16 MB RAM)
DOS
- Lotus 123 spreadsheet for engineering calculations
- LISP for AutoCAD menus
1994
IBM 386 ( 40 MHz processor, 256 MB RAM)
DOS, Windows 3.1
- FoxPro
- Visual FoxPro
- Visual Basic
- SQL
1998
IBM clone( 40 MHz processor, 256 MB RAM)
Windows 95
- PowerBuilder
- Jaguar for web application server
- ASP for web UI
- SQL databases
2000
IBM clone ( 150 MHz processor, 512 MB RAM)
Windows 98, Windows ME, Windows 2000
- ASP for web UI
- Visual Basic
- SQL databases
Linux Debian
- Bash
2003
( 1 GHz processor, first 1 GB, later 4 GB RAM)
Windows Server 2003
- C#
- C++
- Java
- SQL databases
2008
( 1 GHz processor, first 4 G, later 32 GB RAM)
Windows Server 2008
2015
Windows 7 laptop (2 GHz processor, 6 GB RAM, 500 GB HD)
Windows Server 2012 R2 virtual machines in the cloud ( 2 GHz processor, 4 – 32 GB RAM)
- PowerShell
Linux RedHat 7 ( virtual machines in the cloud 2 GHz processor, 4 – 32 GB RAM)
- Bash
MacBook Pro laptop (2.5 GHz i7 processor, 16 GB RAM, 1TB SSD storage)
- Packer
- Terraform
- Ruby
- PowerShell ( on Windows 10 virtual machine )
- Chef
- ServerSpec
- InSpec
- Chocolatey
2019
MacBook Pro (5 GHz i9 processor, 32 GB RAM, 1TB SSD storage)
- Docker
- Kubernetes
- Golang