If you are new to programming and electronics, it will probably be easier to start with one or the other. There are lots resources for learning introductory electronics that could be helpful before you start trying to program an Arduino. You really only need the basics since things like timing circuits, etc. will probably be done in software instead of hardware once you start using the Arduino. You can also start programming without needing any hardware using the XOD simulator. This does not allow you to have hardware like buttons, LEDs, etc., but you can simulate them using tweak and watch nodes. This allows you to make sure your program is right before trying to wire the circuit and wondering if it doesn’t work because of a hardware or software issue. XOD simulator allows you to start with a simple program and use it to explore the hardware instead of needing to understand the hardware first. If a watch node and an LED node are tied to the same value & the watch node shows the value has changed to 1 from 0, but the LED is not lighting up, you either have the wrong pin number for the LED in your program, or there is a hardware problem; you don’t have to wonder if the code is doing something unexpected.
Get comfortable with buttons & POTs (Potentiometers; variable resistors) and you will be able to directly use a lot of sensors without any module or library. Many sensors just have digital or analog output that you can read directly from a pin like a button or POT. Some use I2C so multiple sensors can use the same pin; each must have its own address so they know who you are trying to talk to. Many I2C sensors can use the basic built-in nodes for i2c and just need a single byte sent to the sensor to request a single byte to read back from it. Others need more complex communication to set options or request specific information; those are much easier to deal with if there is an existing module or library. Some sensors require dedicated pins and complex communication/timing that you will not want to deal with on your own. More than likely, these will have Arduino IDE libraries that you can create a wrapper for if XOD modules/libraries don’t already exist, but that is not something you want to tackle as a first project.
For output, LEDs are the easiest hardware to start with. Servos require more complex programming, but XOD nodes already exist making them easy to deal with also. Motors using existing motor controllers supported by XOD are not difficult either (most of these controllers just need a digital pin to control direction and PWM pin to control speed). An I2C LCD is only slightly more complicated since XOD nodes also exist for many of these, and it allows you to provide much more information than a simple LED.
Start with the built-in tutorial. Branch out as you start feeling more comfortable.