Take the ESP32-CAM, a board that started appearing ... so that programs can be uploaded from the Arduino IDE when the reset button is pressed. None of that is terribly complex, but it is inconvenient.