My first any programming project have been HUGE. Like my FIRST FORTRAN program took me and one other person 9 months to code nearly full time. LabVIEW is a data flow programming language which is the deFacto standard for controlling Instrumentation.
https://store.digilentinc.com/labview-home-bundle/ It was very Bizzare learning when it was in it's infancy and was constantly changing. One problem is, instrument drivers are released by the manufacturer of the instrument on a particular version, so your constantly upgrading.
I spent learning and managing a $100,000 USD upgrade project. I was a bit over extended, managing, doing hardware and software design and sometimes development.
One program in this upgrade ran for 17 years with no changes and no hard drive crashes. The only computer issue was dust and a floppy drive replacement.
When I did RCA COSMAC 1802 Assembly language programming, that processor used a "pass the program counter" method. Any register could be the program counter.
One of the first routines I wrote was a subroutine call and return. The entire program to control a model train gantry crane was hand coded. I owned an Amiga computer at the time. See:
https://en.wikipedia.org/wiki/RCA_1802