Installing all basic software for a Windows machine is always very time consuming and you have to search on lots of websites. In addition keeping your software on the newest release can be a real struggle but should be an important task in terms of security. Why should you not don't have a component that manages all this for you? Chocolatey is then what you are looking for. It is a package service similar to apt on Linux. Installing apps only need one command to grab it down from an public online repository.
Chocolatey works with Powershell for serving software. To get started, run a simple Powershell script with administravie priviledges which adds "Choco" as recognized PS syntax. Script can be found here.
Set-ExecutionPolicy Bypass -Scope Process -Force; iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))
From this point you can install choco packages from the online repository. This stores all usual apps/software which is typically used on a system, like: Google Chrome, Adobe Acrobat Reader DC, 7-Zip, Notepadd++ and so on.
To install apps simply run for example "choco install googlechrome". Uninstall works with "choco uninstall". See:
Google Chrome is now already installed and fully operational :) Now continue like this with other applications you need.
But how does updating work? Chocolatey packages are created by the community and every single is tested for some basic checks by Chocolatey so it's definitely a reliable source. (many packages even have 10 millions downloads +) It is normally pretty quick to have newest release. However to update use "choco update all" or "cup all". Choco will check all your installed packages on new releases. But if you don't want to do anything you can use a Choco package which sets up a scheduled task in Windows to update your packages regularly. I am using: "choco install choco-upgrade-all-at --params "'/DAILY:yes /TIME:12:00 /ABORTTIME:14:30'"", this means there's a daily run uf choco update all at 12:00am and aborts this process at the latest on 14:30pm. With this my programms always stay up to date and I have nothing to do for it ;)
Automating the installation can be a big thing. If you think about capabilities of a simple script with the installation command of Chocolatey and later on install all other needed packages. Additionally integrate the update package and prospectively use a single Powershell script for installing all applications & keep the on the latest build. I think thats fantastic!