I have no Arduino, programming, or electronics experience, although I did program in Basic on a DOS machine when I was a kid...that probably doesn't count....
...but I'm not prepared to spend years learning the whole scope of what's involved.
Your BASIC programming experience should help. You should be able to get something simple with an RGB LED running in a couple of days. It might take you a month or so to get something more interesting going with LED strips. If you want to add lots of pots & buttons and maybe sound activation, etc,. that could take a few months. (I'm assuming you'll be playing around with this stuff in your spare time.) It took me a few months to build my 1st Arduino project (a sound-activated lighting project) and I've got a degree in electronics and quite a bit of on-and-off programming experience in several different programming languages.
Like any project, take it one step at a time. It's especially important to "develop" your software this way. Nobody sits-down and writes the whole program. Write and test a few lines of code at a time.
Since the Arduino doesn't have a display, the Serial Monitor is handy for sending messages or variable-values to your computer to see what your program is doing (for debugging & development). For example, you might want to send the ADC/potentiometer value to the computer, a loop-count, or you can send messages like, "Blinking red LED", or "Time is up", etc.
...with extra GUI on the software side,
The Arduino itself doesn't have a graphical display or enough processing power for a GUI interface. You can interface it with your computer, but I don't know anything about how to do that. Of course, then you'd have to program the computer too and that's another learning curve.
On the software side, the Arduino is really easy to set-up and configure. When I got my 1st Arduino it took me about 15 minutes to download and install the development software, and get the Blink LED example running.
The syntax of C/C++ is quite a bit different from BASIC, and the program structure is different with functions instead of subroutines (and objects & classes in C++, but I don't see anyone using those with the Arduino).
But the overall programming concepts of conditional execution (If-statements, etc.) and loops (doing things over-and-over, usually until some condition is met) is the same in any language. If you remember those concepts, and something about how variables are used, you've got a good start.
I recommend that you read through the Programming Language Reference. You won't understand or remember it all, but there's not that much to it and it won't take you too long to read through.
On the hardware side, you might want to start with a single RGB LED (an LED with red, green, and blue LED chips inside, and 4 wires coming-out). I'm sure you can find some examples. You'll need to wire it up to 3 I/O pins (software-configured as outputs) plus a ground connection. You'll also need 3 current-limiting resistors.
Later when you're ready to hook-up the LED strip, you'll need 3 transistors or MOSFETs because the Arduino cannot directly power the LED strip. The LED strip will probably need 12V, and it should have current-limiting resistors built-in. But otherwise, the LED strip should behave and react to software exactly like the RGB LED.
I'd suggest starting with the Blink LED example program. It blinks the pin-13 LED built onto the board, so it doesn't require any additional hardware... Just plug your Arduino into your USB port and download the program.
Then try changing the delay times, maybe try using the random() function to randomize the LED blinking, etc. There are also examples for using PWM to dim an LED. You'll probably want to play-around with that too.
Also try-out the Blink Without Delay example (and try to understand how it works). The regular Blink LED example uses delay(). The problem with delay() is that it freezes your program so it can't do anything else during the delay time. So most real-world programs avoid delay().
Next hook-up a couple more LEDs, or maybe your RGB LED. Try modifying one of those blink programs to blink the LEDs (or the colors in the RGB LED) in sequence. Again, play-around to make it do something interesting... If you are using the RGB LED, try combining the colors to make different colors.
Once you can turn on & off the RGB colors, add PWM to dim each RGB color separately for more color (and brightness) variation.
Once you get this all working under software-control, you can add some pots and/or switches to make your program respond to user input. There are simple examples to get you started reading switches/pots before you integrate those features into your "real" project.
I did program in Basic on a DOS machine when I was a kid...that probably doesn't count....
I'm a little older than you, but I remember when computers came with BASIC built-in. I used to think it was so funny to go into a store that was selling computers and write a little BASIC loop that counted-up forever and I'd just leave it running, scrolling numbers off the screen!
