I wouldn't mind, but considering my attitudes I am not sure.
If you want to work with either branch....
The CIA would like people who are bilingual. Social Science is a huge plus, like linguistics and foreign affairs... those type of work for a specific job they are looking for, but most degrees are applicable. If you have many contacts in like many different countries, the process for you to get in might take a while. If you have ever done anything like Peace Corps, they temporarily ban you from being able to work with the CIA.
The FBI is probably similar to the CIA, I don't remember everything the speakers said, but you go through lie detectors and such when it comes to the FBI. All those physical tests and such you see when it comes to cops and basic training sort of things also occur.
For the CIA/FBI, they often contact more than just the people you know, they might end up contacting someone you didn't like or didn't like you in grade school to get a feel of how you are. Will it mean you won't get in if someone said something bad about you? That sort of depends, they don't want anything that can be used against you as ransom (why you see the FBI using lie detectors.)
NSA, I am almost 100% positive that a programming degree (Computer Engineering, Computer Science, and Electrical Engineering) will get you in, presuming you don't have a bad background check on file.