All official Arduinos run on 5 volts, which for a long time was the 'standard' voltage for hobbyist electronics and microcontrollers. But now the coolest new sensors, displays and chips are 3.3V and are not 5V compatible. For example, XBee radios, and SD cards and acellerometers all run on 3.3V logic and power. If you tried to connect to them with 5V you could damage the internals of the accessory.
We use chips like the CD4050 to do level conversion but if you are using a lot of 3.3V devices, maybe you're just better off upgrading the entire Arduino to run from 3.3V!
To do that, we will replace the regulator so that the DC barrel jack goes to a 3.3v type regulator, not a 5V. And then reconfigure the 5V usb power line so it goes through the regulator as well.
The default regulator is a 5.0V type, but we want 3.3V out, so we'll need to replace it. We'll use a 1117-3.3V (there are a few manufacturers of 1117 regulators, just like the 7805 is made by many factories) regulator in a TO-252-3 package. It looks like this:
To start, we'll need to remove the old regulator. The easiest way to do that is to first clip the two legs.
The next part is a little tricky, the USB jack gives us exactly 5V already, and normally that is tied to the output of the voltage regulator (essentially, its got a little circuitry that connects it when the DC jack is not powered).
The easiest way to make the USB 5V also go through the regulator is to remove the fuse and solder a diode from the USB output to the regulator input.
You can use any power diode, a 1N4001 is perfect and only a few pennies.
The trade off is now there is no 500 mA fuse for the USB jack. The good news is that computers will have their own fuses on the USB connector (inside the computer) so its not likely you will destroy your PC. But be aware that you're losing a little safety.
Heat the fuse with your soldering iron, again adding solder may help thermal conductivity. Since the fuse is very conductive you can probably just heat one side for a while and both ends will melt.
The Arduino will still automatically select whichever power plug is giving you more power.