I would love to delve into GNU Radio - but not really sure where to start without a background in communication theory. Should I start by reading a textbook on electronic communication? My background is "EE"CS, with 90% being cs.
I used gnuradio to decode a remote control to a device that allowed me to then automate. I now use a Great Scott Gadgets YARD Stick One to transmit along with rfcat and python. A generic RTL-SDR device with gnuradio worked on the decoding part.
I found some good online resources to understand how to do the decoding (e.g. learning the different protocols used). You can dive into more theory (FFT etc.) of course. It was a winter break project. Pretty fun. But be warned SDR generally can be a deep rabbit hole.
One note: gnuradio is a shockingly bloated suite of software, so pick a machine you don't mind getting tons of new packages.
GNU Radio supports audio I/O. You can use it with your laptop, or desktop, and speakers/mic to just build an intuitive understanding of quite a few things, without spending any money on hardware.
The $30 SDR is an amazing source of samples once you get past that point. It's quite amazing how much you can do with the the pair of GNU Radio and the RTLSDR. I built a receiver/display of VOR aircraft navigation signals, for example.
GNURadio is a fantastic project. I wish I had it many years while I was studying digital communications at university. I am quite busy, but one of my to-do project is to write a digital mode (FT8, WSPR, etc) decoder with GNURadio