I'm a software developer that's on the market for a job. I was working on a contract with company X. Company X lost the contract and it was awarded to company Y. I spoke with my current employer (X) and expressed interest in pursuing other opportunities that do interest me (nosql, cloud architectures, distributed systems), and they admired that. Unfortunately, neither company X or Y would afford me that opportunity.
I discussed my situation with some family members, a lot of which are business owners. They told me to apply to company Y and ask for a salary increase because they would "need" my knowledge of the system. I disagreed because I wanted something more fun and interesting. Some said that I would be underpaid if I chose to move elsewhere. That was just a way for them to convince me not to leave.
My argument is that I want to ENJOY my job and be with a smart group of engineers. My family's view is that I should never take a salary cut or even equivalent compensation when shifting jobs, I should always make more, and if I need to learn any technology, I could do it on the side. To me, the value of learning things is when they are put to practice, and when learning at home, I'm limited to the resources available and my imagination. Working with others introduces me to new thoughts, helps me understand unclear concepts, and solidifies the things I learn.
How should I answer? Where is the balance between having a good paycheck and having fun at work?