Most of my projects employ two types of computer code; Firmware and User Interface. Firmware is the code that is written to the flash memory of the microcontroller. While a microcontroller can be programmed to operate without a user interface, it cannot operate without firmware. An example of a project that does not require a user interface is our thermostat. For any project that requires requires substantial user input or real time monitoring of data would probably benefit from having a user interface.
Here is a link to our page that discusses loading firmware. Here is a link to our page that discusses User Interfaces.
While most of the firmware for my projects was written using the Arduino Interactive Development Environment (IDE), other environments are available and have advantages that should be considered. Perhaps the most widely used (other than Arduino) is VSCode. Here is a link to a page where you can download Arduino software for free. Here is a link for downloading VSCode (also free). Arduino is probably the simplest to get a user started with and VSCode is a richer, more powerful environment.
Benefits of Arduino come from its wide acceptance and use by both beginners and experts. This means that a huge volume of material is available, including hardware and libraries with example code.