Wow, this is an old topic, but I had to answer as I am in this same situation. I have been in programming since I was 14 (14 years ago) and I currently have a Bachelors in Computer Systems Engineering, with a Masters in Systems Architecture and Engineering.
I chose to pursue my MBA because I love business, and I want to be able to take great ideas and see those taken all the way to market. As an engineer I've learned that you can have a great idea, but there is something to be said about understanding how to make that idea successful from a business perspective.
Pursuing an MBA is mainly about networking. You go to classes, but its nothing earth shattering - the power is in the bonds you build with people in the program. Proof of this point for me was when a friend got me a one hour meeting with the VP of a Fortune 100 company who went to the same school I was interested in. She hadn't spoken to him since they completed the program 10+ years ago. So that is an example of the kind of network you can build from an MBA.
My advice to you is this:
1.) Follow what you love. If you love software/engineering/etc. then do that and don't worry about not having the skills from an MBA. It's more important that you find someone who shares your vision and helps you through the process of realizing it.
2.) Pursue the MBA if you like meeting people and really want to branch out. You don't need to give up your technical side, but you need to be interested in getting out there and meeting people who come from very different walks of life than yours.
3.) Really dig in to the decision, and find some schools where you think you would end up and talk to alumni to see what they do, and why they got an MBA.
Hope this helps someone who sees this questions. The other answers were good but they really lacked the input about networking, which I think is a major component/driver of getting an MBA.